黑马程序员技术交流社区

标题: 新人学习遇到一个问题,希望大家给点思路 [打印本页]

作者: frozentears    时间: 2016-7-24 15:47
标题: 新人学习遇到一个问题,希望大家给点思路
一球从100米高度自由落下,每次落地后反跳回原高度的一半;再落下,求它在 第10次落地时,共经过多少米?第10次反弹多高?
作者: yuxing    时间: 2016-7-24 17:27
不写全过程了, 设每次高度为 i(最好double 类型) , 每次循环后 i = i / 2  ,      设全程为sum , sum = sum + 3/2* i,然后循环就是了~
作者: qetu001212    时间: 2016-7-24 19:16
class Prog {
        public static void main(String[] args) {
                double sum = 0.0;
                int x = 10;
                for (int i = 1;i <= x;i++ ) {
                        sum += high(i);
                }
                double y = high(11);
                System.out.println("第"+x+"次落地时,共经过"+sum+"米");
                System.out.println("第"+x+"次反弹"+y+"米");
        }
        public static double high(int x) {
                double a = 100.0;
                for (int i = 1;i < x;i++ ) {
                        a /= 2;
                }
                return a;
        }
}
作者: frozentears    时间: 2016-7-24 20:10
谢谢了    知道了

作者: 大天    时间: 2016-7-24 22:28
while循环
作者: itismyhao    时间: 2016-7-25 01:30
小tips
落下返回为一次。
作者: zhangjiesss    时间: 2016-7-26 07:18

class  Demo
{
        public static void main(String[] args)
        {
                double x=100;
                double sum=0;
                for (int y=1;y<=10 ;y++ )
                {
                        sum=sum+x;
                        x=x/2;
                }
                System.out.println( "第10次落地时,共经过"+sum+"米");
                System.out.println("第10次反弹"+x+"米");
        }
}





欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2