一個小球,從高爲H的地方下落,下落彈地之後彈起高度爲下落時的一半, 比如第一次彈起高度爲H/2,如此往復,計算從小球H高度下落到第n次彈地 往返的總路程。

一個小球,從高爲H的地方下落,下落彈地之後彈起高度爲下落時的一半,比如第一次彈起高度爲H/2,如此往復,計算從小球H高度下落到第n次彈地往返的總路程。

#include<iostream>
#include<cmath>
using namespace std;
double fun(int n)
{
	if(n==1)
		return 1;
	else
		return fun(n-1)+1/pow(2,n-2);
}
int main()
{
	int n;
	double H;
	while(1)
	{
		cout<<"請輸入高度H與次數n:"<<endl;
		cin>>H>>n;
		if(H==0&&n==0)
			break;
		cout<<"返回的總路程爲:"<<endl;
		cout<<fun(n)*H<<endl;
	}
	return 0;
}


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章