ppts.net
当前位置:首页>>关于计算 1-1/2+1/4-1/16+1/32-...之和,直到加项小于10...的资料>>

计算 1-1/2+1/4-1/16+1/32-...之和,直到加项小于10...

#include int main() { int i; float s=0.0,add=-1.0; for (i=1;i

不太记得C语言的语法了,大概就以下这样,如果语法错了,你自己看看再改改好了。。。 #include #include int main(void) { double add = 1.0; double sum = 0.0; while(abs(add) >= pow10(-6)){ sum += add; add *= -0.5; } printf("The Sum is ...

#includeint main(){int i=1,flag=-1;double sum=0;while(sum>10e-6){sum+=1.0/i;i=i*2;i*=flag;}printf("sum=%lf\n",sum);return 0;}应该是这样的。。

没写过VB,但是看你代码应该是循环条件有问题,当n

term=sign/n; 这句sign和n都是整型, 运算结果取整了,导致出错. 修改很简单 改成 term=sign/(double)n; 就可以了.

#include#includemain(){int n=0;double sum=1,k=-0.5,t=1,m;while(fabs(t)>0.0001){t=t*k;m=t;sum=sum+m;n++;}printf("n=%d ,sum=%lf\n",n,sum);}

a>=1E-6这个是不对的,应该是1/a的值,不然a一直网上递增,循环退不出去

一、算法分析: 1 分析数列规律。 正负交替,分子为1,分母为1,4,7,10,... 即第n项的分母为3*n-2 2 输入n,循环n次,计算每一项并累加。 二、参考代码: #include int main(){ int i,n; float r=0; scanf("%d",&n);//输入n值。 for(i = 1; i

fabs(term)>=1e-4 term=sign*1.0/n sign=-sign

int x = 1; int temp = 1; double y = 0.0; while( temp * x

网站首页 | 网站地图
All rights reserved Powered by www.ppts.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com