等比數列求和

/*等比數列求和
輸入:輸入數據不多於50對,每對數據含有一個整數n(1<=n<=20),一個小數q(0<q<2)
輸出:求和,1+q^2+...+q^n 精確到小數點後3位
*/
#include <iostream>
#include <iomanip>
#include <cmath>
using namespace std;

int main()
{
	int n;
	double q, sum = 0.0;
	while(cin >> n >> q)
	{
		if(q == 1)
			sum = n;
		else
		{
			sum = ((1 - pow(q, (n+1) * 1.0)) / (1 - q));//有n+1項
		}
		cout << setprecision(3) << setiosflags(ios:: fixed) << sum <<endl;
		sum = 0.0;
	}
	return 0;
}
最近比較注意代碼的書寫格式了。。。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章