首页 > 其他 > 详细

一个球从100m高度自由落下,每次落地后反弹回原高度的一半,再落下,再反弹。求它在第10次落地时共经过多少米,第10次反弹多高

时间:2020-09-13 15:27:34      阅读:191      评论:0      收藏:0      [点我收藏+]

一个球从100m高度自由落下,每次落地后反弹回原高度的一半,再落下,再反弹。求它在第10次落地时共经过多少米,第10次反弹多高

答案解析:

该题目需要循环10次,在每一循环的时候,需要将下落的高度和回弹的高度加起来。需要注意的点,第10次下落不需要在计算回弹的距离了,所以需要特殊处理下。在计算每次高度的时候,会有小数存在,所以需要选用浮点数

代码示例:

#include <stdio.h>

int main()
{
	//总高度
	double total_m = 100.0;
	//小球经历的米数
	double total_sum = 0.0;
	for (int i = 0; i < 10; i++)
	{
		total_sum += total_m;
		total_m /= 2;
		total_sum += total_m;
	}
	//不需要计算第10次的反弹高度,所以减去
	total_sum -= total_m;
	printf("小球总共经历%lf米, 第10次反弹%lf米\n", total_sum, total_m);
	return 0;
}

运行截图:

技术分享图片

一个球从100m高度自由落下,每次落地后反弹回原高度的一半,再落下,再反弹。求它在第10次落地时共经过多少米,第10次反弹多高

原文:https://www.cnblogs.com/weiyidedaan/p/13660888.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!