标题:利用泰勒级数计算sinx
只看楼主
走在街上的猪
Rank: 2
等 级:论坛游民
帖 子:11
专家分:21
注 册:2015-10-11
 问题点数:0 回复次数:0 
利用泰勒级数计算sinx

编写程序,利用级数和计算sin(x)=x/1-x^3/3!+x^5/5!-x^7/7!+x^9/9!+..........+(-1)^(n-1)*x^(2n-1)/(2n-1)!。

输入要计算的项数n和弧度x,输出sin(x)的值。


输入


有多组数据,每组包含一个整数项数n和一个实数x。


输出

sin(x)的值(保留3位小数)。

样例输入

10 1.57
10 0.5233

样例输出

1.000
0.500


上面那是题目要求

我自己按照https://bbs.bccn.net/thread-355256-1-1.html本论坛的帖子修改一下写了这个函数

#include<stdio.h>
#include<math.h>
double sin(double x,int n)
{
    int i;
    double c,y;
    for(i=2.c=x;i<=n;i++)
    {
        y+=c;
        c*=-x*x;
        c/=2*i;
        c/=2*i+1;
    }
    return y;
}
int main()
{
    double x,z;
    int n;
    scanf("%d%lf",&n,&x);
    z=sin(x,n);
    printf("%.3lf",z);
    return 0;
}

但不知道为什么输出结果却为-92559631349317831000000000000000000000000000000000000000000000.000,,怎么就出现问题了- -。希望有人可以指点下
搜索更多相关主题的帖子: 编写程序 include double 编写程序 include double 
2015-12-16 23:01



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




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

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