小明为了探究神秘的物理现象, 从高楼抛下一个弹球 但由于高空抛物被警察抓了, 请各位小伙伴完
成他未完成的心愿
小球从某一高度落下,每次落地后反跳回原来高度的一半,再落下。
输入弹球的初始高度M和回弹次数N, 输出弹球第N次回弹后的高度 和达到该高度后所经过的距离(保留两位小
数)
(0<M<2000, 0<N<50)
样例输入
1000 5
样例输出
31.25
2906.25
要注意,除去第一次掉下的距离,其他的上弹高度和下落高度呈2倍关系
代码如下:
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.print("请输入初始高度M(0<M<2000):");
double M=scanner.nextDouble();
System.out.print("请输入回弹次数N(0<N<50):");
int N=scanner.nextInt();
double length=0;
for (int i = 1; i <= N; i++) {
length+=M;//下落的距离
M/=2; //每弹一次高度减半
length+=M;//上弹的距离
}
System.out.printf("第%d次回弹之后的高度为:%.2f\n",N,M);
System.out.printf("所经过的距离为:%.2f",length);
}
}