package Day03;/*** 第三题:* 题目:一球从100米高度自由落下,每次落地后反跳回原高度的一半;再落下,求它在* 第10次落地时,共经过多少米?第10次反弹多高?* <p>* //第一次,从100落下  m=100 sum=0   sum0 += m100 + (m100/ 2 ) ==== m=50  sum=150* //第二次, 从50落下 m= 50  sum=150  sum150 += m50 + (m50/ 2 )  ===== m=25  sum=225* //第三次, 从25落下 m= 25  sum=225  sum225 += m25 + (m25/ 2 )  ===== m=12.5  sum=262.5*/
public class Day03_Demo03 {public static void main(String[] args) {double m = 100;  //        弹起米数double sum = 0;   //      经过的米数for (int i = 1; i <= 10; i++) {sum += m + (m / 2);System.out.println("第" + i + "次  --落下--         的米数为:    " + m);m = m / 2;System.out.println("第" + i + "次  --落下弹起--     的米数为:    " + m);System.out.println("第" + i + "次  --落下加弹起--   总米数为:    " + sum);//第一次,从100落下  m=100 sum=0   sum0 += m100 + (m100/ 2 ) ==== m=50  sum=150//第二次, 从50落下 m= 50  sum=150  sum150 += m50 + (m50/ 2 )  ===== m=25  sum=225//第三次, 从25落下 m= 25  sum=225  sum225 += m25 + (m25/ 2 )  ===== m=12.5  sum=262.5System.out.println();}System.out.println("------------------------------------------------------");}/*** 要求写一个jingluo方法:该方法要求传入一个落地的次数n,就可以求出小球在第n次落地时经过了多少米。* @param n 落地次数* @return 返回小球在第n次落地时经过了多少米*/public double Jiangluo(int n) {double m = 100; //        弹起米数double sum = 0; //      经过的米数for (int i = 1; i <= n; i++) {sum += m + (m / 2);m = m / 2;}return sum;}/*** 要求写一个fantan方法:该方法要求传入n,就可以求出第n次反弹了多高。** @param n 传入反弹次数* @return 返回第N次反弹了多高*/public double Fantan(int n) {double m = 100; //        弹起米数for (int i = 1; i <= n; i++) {m = m / 2;}return m;}
}