码迷,mamicode.com
首页 > 其他好文 > 详细

小球落地问题

时间:2019-05-13 23:23:59      阅读:168      评论:0      收藏:0      [点我收藏+]

标签:mat   string   format   str   next   scanner   form   code   返回   

 一球从M米高度自由下落,每次落地后返回原高度的一半,再落下。

它在第N次落地时反弹多高?共经过多少米? 保留两位小数

 

第一次落地反弹 M/2,

第二次落地反弹 M/4 (即 M/(2^2)),

第三次落地反弹 M/8 (即 M/(2^3)),

以此类推第 N次反弹高度为 M/(2^N)

public class  Test{
public static void main(String[] args) {
    Scanner scanner = new Scanner(System.in);
    int M = scanner.nextInt(); //总高度
    int N = scanner.nextInt(); //反弹的次数
    double height = 0,sum = M;
    for(int i=1;i<=N;i++) {
        height=M/Math.pow(2, i);
        if(i<N) {
            sum += 2*height;
        }else if(i==N) {
            sum += 0;
        }
    }
    String h = String.format("%.2f", height);
    String s = String.format("%.2f", sum); 
    System.out.println(h+" "+s);
  }
}

 

小球落地问题

标签:mat   string   format   str   next   scanner   form   code   返回   

原文地址:https://www.cnblogs.com/chaunceyji/p/10859393.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!