一個球從100米高度自由下落,每次落地後反跳回原來的高度的一半,再落下;
阿新 • • 發佈:2021-02-19
求它在第10次落地時,共經過多少米?第10次反彈多高?
#include <stdio.h>
void process(double h, int t)
{
double H = h; //將原始高度保留
int T = t;
double sum = 0;
while (t > 0)
{
// 1、2、3、4...
//100、50、25、12.5
sum = sum + h; //每次落地前高度之和。
h = h / 2;
t--;
}
printf("第%d次下落共經過:%lf米\n" , T, 2 * sum - H); //除第一次以外每一次都是先彈起,再下落
printf("第%d次反彈的高度是:%lf米\n", T, h);
}
int main()
{
int hight = 100;
int times = 10;
process(hight, times);
return 0;
}
執行結果