EX6.28 计算球下落经过多少米
本帖最后由 我爱橙 于 2022-6-11 22:48 编辑一个球从100米高度自由落下,每次落地后反跳回原高度的一半,再落下并反弹......,求它在第5次和第10次落地时,分别共经过了多少米?
第5次和第10次反弹分别是多高?要求计算结果保留到小数点后3位。用户从键盘输入想要计算的第n次(n<=15)。程序中所有浮点数的数据类型均为float。
程序运行结果示例1:
Input:
5↙
5 times:
287.500
3.125
程序运行结果示例2:
Input:
10↙
10 times:
299.609
0.098
输入格式:
输入提示:"Input:\n"
输入格式: "%d"
输出格式:
反弹次数:"%d times:\n"
第n次反弹共经过多少米:"%.3f\n"
第n次的反弹高度:"%.3f\n"
输入样例:
在这里给出一组输入。例如:
5
输出样例:
在这里给出相应的输出。例如:
Input:
5 times:
287.500
3.125
#include<stdio.h>
#include<math.h>
int main()
{
double h1=100.0,h2;
int i,n;
n<=15;
printf("Input:\n");
scanf("%d",&n);
h2=h1;
for(i=1;i<=n;i++)
{
h2=h2/2;
h1=h1+(h2*2);
}
printf("%d times:\n",n);//反弹次数:
printf("%.3f\n",h1);//第n次反弹共经过多少米
printf("%.3f\n",h2);//第n次的反弹高度:
return 0;
}
Input:
5
5 times:
293.750
3.125
为什么反弹路程不对啊,应该是
第5次落地反弹高度:3.125000
第5次落地经过的路程287.500000
页:
[1]