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

//章节:第五章 循环结构程序设计 
//题号:5.11
//题目:一个球从100米高度自由落下,每次落地后反跳回原高度的一半,
//再落下,再反弹。求它在第十次落地时,共经过多少米,第十次反弹多高。 
#include <stdio.h>
#include <math.h>
int main()
{
	float sum=100,h=0,sum0;
	int i;
	for(i=2;i<=10;i++)
	{
		sum0=100/pow(2,i-2);
		sum=sum+sum0;
	}
	h=100/pow(2,10);
	printf("共经过%fm\n",sum);
	printf("第十次反弹%fm\n",h);
	return 0;
}
#include <stdio.h> 
int main()
{
	double h=100.0,i=2,sum=100;
	while(i<=10)
	{
		h=0.5*h;
		sum=sum+h*2;
		i++;
	}
	printf("第十次落地时共经过%lf米\n",sum);
	printf("第十次反弹%lf米高",h/2);
	return 0;
}

猜你喜欢

转载自blog.csdn.net/weixin_44589540/article/details/86592175