#include <iostream>
using namespace std;
int main()
{
int a,n;
float sum,sum1,sum2;
sum1=0,sum2=0,sum=0,a=0;
cin>>n;
while(a<=n)
{
if(a%2!=0)
sum1=sum1+(1.0/n);
else
sum2=sum2-(1.0/n);}
sum=sum1+sum2;
cout<<sum;
system("pause");
return 0;
}
c++编程求1-1/2+1/3-......1/n,用while和do while做,哪里错了?
答案:3 悬赏:50
解决时间 2021-03-22 01:43
- 提问者网友:烟刺痛了眼
- 2021-03-21 21:55
最佳答案
- 二级知识专家网友:24K纯糖
- 2021-03-21 22:35
1. 赋初值时,a = 1
2. sum1 = sum1 + (1.0 / a);
sum2 = sum2 - (1.0 / a);
3. 漏了一句a++;
2. sum1 = sum1 + (1.0 / a);
sum2 = sum2 - (1.0 / a);
3. 漏了一句a++;
全部回答
- 1楼网友:何必打扰
- 2021-03-21 23:29
#include <iostream>
using namespace std;
int main()
{
int n,a;
float sum;
sum=0,a=0;
cin>>n;
while(a++<n)
{
if(a%2!=0)
sum=sum+(1.0/a);
else
sum=sum-(1.0/a);
}
cout<<sum;
system("pause");
return 0;
}
- 2楼网友:浪女动了心
- 2021-03-21 23:16
#include <iostream>
using namespace std;
int main()
{
int a,n;
float sum,sum1,sum2;
sum1=0,sum2=0,sum=0,a=1; //改过!改过!改过!改过!
cin>>n;
while(a<=n)
{
if(a%2!=0)
sum1=sum1+(1.0/a); //改过!改过!改过!改过!
else
sum2=sum2-(1.0/a);a++;} //改过!改过!改过!改过!
sum=sum1+sum2;
cout<<sum;
system("pause");
return 0;
}
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯