标题:泰勒级运算这个程序结果是错误的,但不知道哪里错了?
只看楼主
s111111
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2017-11-20
 问题点数:0 回复次数:0 
泰勒级运算这个程序结果是错误的,但不知道哪里错了?
#include<stdio.h>
#include<math.h>
long Fact(int n);
int main()
{
    int count;
    double  x, Sn=0, an, a;//Sn前n项和,an第n项
    printf ("Input x:\n");
    scanf ( "%lf", &x);
    an = x;
    a=x;//a用来存放最后一项的值
    for (count=1; a>=1e-5||a<=-1e-5; count++)
    {
        Sn = Sn + an;
        a=an;
        an=(an * (-x) * x)/Fact(2*(count+1)-1);
    }
    printf ("sin(x)=%.3f,count=%d\n",Sn,count);
    return 0;
}
long Fact (int n)
{
    int result, i;
    for (i=2, result=1; i<=n; i++)
        result = result * i;
    return result;
}
搜索更多相关主题的帖子: 运算 错误 int count result 
2017-11-20 21:19



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-482678-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.255171 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved