球的自由落體運動
阿新 • • 發佈:2019-01-05
/** *檔名:Ball.java *描述:1.一球從100米高度自由落下,每次落地後反跳回原高度的一半; *再落下,求它在第10次落地時,共經過多少米?第10次反彈多高? *作者:kyx *時間:2019.01.04 *備註:用兩個陣列記錄第n次下落或反彈的距離 */ public class Ball { public static void main(String[] args) { //為了方便表示,將陣列下標為0的位置的值設為0,用下標1位置的值表示第一次掉落或反彈 double[] fall = new double[11];//掉落 double[] rebound = new double[11];//反彈 int sum = 0;//第n次落地時經過的總距離 fall[0] = 0;fall[1] = 100; rebound[0] = 0;rebound[1] = 50; for(int i=2;i<11;++i){ fall[i] = rebound[i-1]; rebound[i] = fall[i]/2; } for(int i=1;i<10;++i){ sum+=fall[i]+rebound[i]; } sum+=fall[10]; System.out.println("該球在第10次落地時,共經過距離為"+sum+"米"); System.out.println("該球第10次反彈高"+rebound[10]+"米"); /*測試 for(int i=1;i<11;++i){ System.out.print(fall[i]+" "); } System.out.println(""); for(int i=1;i<11;++i){ System.out.print(rebound[i]+" "); }*/ } }