Vicmouth 发表于 2020-3-18 16:22:35

小白求助

求图中S,式子一直到最后一项的绝对值小于1E-4.

人造人 发表于 2020-3-18 16:44:16

我不知道这个式子的结果,不知道程序对不对

#include <stdio.h>

int main(void)
{
    double S = 0;
    const int sign[] = {1, -1};
    for(int i = 1; 1.0 / i >= 10e-4; ++i) {
      S += sign[(i + 1) % 2] * (1.0 / i);
    }
    printf("%.10lf\n", S);
    return 0;
}

墨羽岚 发表于 2020-3-18 16:45:46

本帖最后由 墨羽岚 于 2020-3-18 16:47 编辑

#include<stdio.h>
#include<math.h>
int main()
{
        double s=1.0,t=2.0,h=1.0;int k=-1;
        do
        {
                h=k*(1/t);
                s+=h;
                k*=-1;
                t++;
        }while(fabs(h)>=0.0001);
        printf("%f",s);
        return 0;
}
这样的输出值是0.693197,你看看对不对

小笨笨难得糊涂 发表于 2020-3-19 02:01:54

最后一项绝对值小于1E-4说明分母等于10000是临界值
#include <stdio.h>
int main()
{
        int i;
        float s=0.0,add=-1.0;
        for (i=1;i<=10000;i++)
        {
                add*=-1;
                s+=add/i;
        }
        printf("所求的近似值为:%f\n",s);
}

计算结果是:0.693092
页: [1]
查看完整版本: 小白求助