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

来源:互联网 发布:maven build java 编辑:程序博客网 时间:2024/05/16 12:41

题目描述

       假设一个球从任意高度自由落下,每次落地后反跳回原高度的一半; 再落下, 求它在第5次落地时,共经历多少米?第5次反弹多高?

/** * 统计出第5次落地时,共经过多少米? *  * @param high 球的起始高度 * @return 英文字母的个数 */public static double getJourney(int high){    return 0;}/** * 统计出第5次反弹多高? *  * @param high 球的起始高度 * @return 空格的个数 */public static double getTenthHigh(int high){    return 0;}
  • 输入描述:

    输入起始高度,int型

  • 输出描述:

    分别输出第5次落地时,共经过多少米第5次反弹多高

  • 示例1

    输入:
               1
    输出:
               2.875
               0.03125

代码实现:

  • 注意:

      牛客oj平台这题问题,在于后台调试精确度(随便四舍五入)有问题,起初以为是我的代码问题,把平台上通过的代码进行调试,发现居然也报错,我也是醉了…具体就不纠结了,反正做对就行!

package cn.c_shuang.demo38;import java.util.Scanner;public class Main {     public static void main(String[] args){            Scanner in = new Scanner(System.in);            while(in.hasNext()){                int n = in.nextInt();                double num=(double)n;                double sum=num;                for (int i = 1; i < 5; i++) {                    num/=2;                    sum+=num*2;                }                System.out.println(sum);                System.out.println(num/2);            }            in.close();        }}
阅读全文
0 0
原创粉丝点击