您的位置:首页 > 编程语言 > C语言/C++

等比数列求和(C++实现)

2015-12-25 17:26 2883 查看

第一种实现方式,

最传统古老的,先求出每一项,然后再求和。

#include <fstream>
#include <iostream>
using namespace std;
int main(int argc, char* argv[])
{
int i,j;
while(cin>>i>>j) //输入两个数。一个是公比i,另一个是项数j.
{
int k=0,result=1;
int sum=0;
cout<<"第1个数数:"<<1<<endl;
while(k<=j-1)
{
result=result*i;
k++;
sum+=result;
cout<<"第"<<k+1<<"个数是:"<<result<<" "<<endl;
}
cout<<"阶乘之和是:"<<sum+1<<endl;
}
return 0;
}


第二种实现方式:

用等比数列的求和公式,借助pow(x,y).

#include <iostream>
#include <fstream>
#include <cmath>
using namespace std;
int main(int argc, char* argv[])
{
int n;
double q,sum;
while(cin>>n>>q)
{
if(q==1)sum=1+n;
else
sum=(1-pow(q,n+1))/(1-q);
cout<<sum<<endl;
}
return 0;
}


ps:本帖仅新手可见,其余人员自行过滤。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  c++ 等比数列