Java50道经典习题-程序10 自由落体

Posted parkour1026

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java50道经典习题-程序10 自由落体相关的知识,希望对你有一定的参考价值。

题目:一球从100米高度自由落下,每次落地后反跳回原高度的一半;再落下,求它在 第10次落地时,共经过多少米?第10次反弹多高?

 1 import java.util.Scanner;
 2 public class Prog10 {
 3     public static void main(String[] args) {
 4         System.out.println("请输入小球落地时的高度和求解的次数:");
 5         Scanner scan=new Scanner(System.in);
 6         int h=scan.nextInt();
 7         int n=scan.nextInt();
 8         scan.close();
 9         distance(h,n);
10     }
11     //小球从h高度落下,经过n次反弹后经过的距离和反弹的高度
12     private static void distance(int h,int n) {
13         double length=0;
14         for(int i=0;i<n;i++) {
15             length+=h;
16             h/=2.0;
17         }
18         System.out.println("经过第"+n+"次反弹后,小球共经过"+length+"米,"+"第"+n+"次反弹的高度为"+h+"米");
19     }
20 }
21 /*运行结果
22 请输入小球落地时的高度和求解的次数:
23 100
24 10
25 经过第10次反弹后,小球共经过197.0米,第10次反弹的高度为0米
26 */

 

以上是关于Java50道经典习题-程序10 自由落体的主要内容,如果未能解决你的问题,请参考以下文章

Java50道经典习题-程序22 递归求阶乘

Java50道经典习题-程序13 根据条件求数字

Java基础50道经典练习题(23)——求岁数

Java基础50道经典练习题(23)——求岁数

Java50道经典习题-程序16 在控制台上打印九九乘法表

Java50道经典习题-程序21 求阶乘