当我想计算以下系列的总和时,我做了这个练习

时间:2016-07-18 15:16:57

标签: c++

This is the question

#include <iostream>
using namespace std;
int factorial(int x){
int fact=1;
if (x==1){
return 1;
}
else{
    fact=x*factorial(x-1);
}
return fact;
}

int main()
{
double sum1=0;
double sum2=0;
for (int i=1;i<100;i=i+2){

sum1=sum1+1/factorial(i);
}
 for (int j=2;j<101;j=j+2){
        sum2=sum2-1/factorial(j);
    }
    double sum;
    sum=sum1+sum2;
    cout<<sum<<endl;

}

我在这里做错了什么? Codeblocks在运行时一直给我一个错误..有什么更好的选择呢? 感谢

1 个答案:

答案 0 :(得分:0)

enter image description here

60d01602-c04d-4a3f-bbf2-132eb0ebbfc6。您要查找的结果是Enter

必须重写代码。但是,如果你使用64位,那么你可以 适合更多,但因为我使用32位,我之前只能得到sum=0到17 sum = sum1 + sum2 = 0i溢出。

sum1