求多项式的和

题目:求1-1/3+1/5-...+1/(2n-1)的和,当第n项的绝对值小于1e-6时停止相加,输出之前各项之和。

通过r进行符号反转

#include<stdio.h>
void main()
{
    double s=0,n=1;
    int r=-1;
    for(;1/n>1e-6;n+=2)
    {
        s=s+r/n;
        r=-r;
    }
    printf("%.6lf",s);
 } 

通过if判断n的值进行判断

#include<stdio.h>
void main()
{
    int n=1;
    double x=1,s=0;
    for(;x>1e-6;n++)
    {
        if(n%2!=0) 
        x=-x;
        s=s+x;
        x=1.0/(2*n+1);
    }
    printf("%.6lf",s);
}

运算结果相同:


-0.785398
无标签
评论区
头像
    头像
    123
      

      头像
      C代码
        
      @123

      发个问号就知道是你