题解 | #求小球落地5次后所经历的路程和第5次反弹的高度#

求小球落地5次后所经历的路程和第5次反弹的高度

http://www.nowcoder.com/practice/2f6f9339d151410583459847ecc98446

import java.util.*;

/*
假设一个球从任意高度自由落下,每次落地后反跳回原高度的一半; 再落下, 求它在第5次落地时,共经历多少米?第5次反弹多高?
分别输出第5次落地时,共经过多少米以及第5次反弹多高。
注意:你可以认为你输出保留六位或以上小数的结果可以通过此题。
* */
public class Main{

    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        while(sc.hasNextInt()) {
            int n = sc.nextInt();
            double meter = 0.0;
            double five = 0.0;
            //弹跳的高度为 n/1,1,2,4,8...
            for (int i = 0; i < 5; i++) {
                if (i == 0) {
                    meter = n;
                } else {
                    meter += n / Math.pow(2, i - 1);
                }
            }
//            five = n / Math.pow(2, 5);
            five = n / Math.pow(2, 5);
            //保留小数点后6位
            System.out.println(String.format("%.6f", meter));
            System.out.println(String.format("%.6f", five));
        }
    }
}
全部评论

相关推荐

oppo 应用软开 22*15+0.5*12
拿到了ssp完美:真的坎坷,但是你至少拿到这么多offer了!
点赞 评论 收藏
分享
点赞 评论 收藏
分享
评论
点赞
收藏
分享
牛客网
牛客企业服务