描述
一球從某一高度落下(整數,單位米),每次落地后反跳回原來高度的一半,再落下。
編程計算氣球在第10次落地時,共經過多少米? 第10次反彈多高?
輸入輸入一個整數h,表示球的初始高度。輸出輸出包含兩行:
第1行:到球第10次落地時,一共經過的米數。
第2行:第10次彈跳的高度。
注意:結果可能是實數,結果用double類型保存。
提示:輸出時不需要對精度特殊控制,用cout << ANSWER,或者printf("%g", ANSWER)即可。樣例輸入
20
樣例輸出
59.9219 0.0195313
來源計算概論2007, XieDi
#include<stdio.h> int main() { double h,sum,i; scanf("%lf",&h); sum=2*h;
//這里包含了第一次和第二次落地 for(i=1;i<=8;i++) { h=h/2; sum+=h; } h=h/4;
//自己想一下為什么 printf("%g\n%g",sum,h); return 0; }