本文主要是介绍Java_小球弹起问题,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
源码如下
如有错误,请指正
import java.util.Scanner;
//一球从100米高度自由落下,每次落地后反跳回原高度的一半;再落下,
//求它在第10次落地时,共经过多少米?第10次反弹多高?
public class Test10_ball {public static void main(String[] args) {float last=100;//初始高度为100float sum=100;//初始高度为100System.out.print("请输入弹起的次数:");Scanner input = new Scanner(System.in);int num = input.nextInt();for(int i=0;i<num;i++){last =(float)last/2;//每次弹起减一半高度sum += last*2*1.0;//sum=sum+last*2全路程,配合之后在打印时减去的最后一次高度即为路程}System.out.println("第"+num+"次弹起的高度是"+last);System.out.println("一共经过的路程为"+(sum-last));//由于弹起一次到最高点,路程为这一次的一半加上之前的路程//所以需要减去最后一次弹起的高度}
}
效果如下:
第一次弹起:
第十次弹起:
这篇关于Java_小球弹起问题的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!