c语言已知sin(x)=x 1 -x,c语言:已知求正弦 sin(x) 的近似值的多项式公式为:

sin(x) = x - x 3 /3! + x 5 /5! - x 7 /7!+.................

自己写了一下,下面是我的代码,输出有问题。但是检查不出来。希望各位老师们能帮忙看下,具体错在哪里。现在的输出是:弧度50的正弦为-1.#IND00。这个我百度了一下,好像是除0就显示这样的错误,但是现在就是不知道错在哪里。

#include

double jiecheng (int n) //阶乘  {  double sum=1;  for (;n>0;n--)  sum=sum*n;  return sum; }  double mi (double x,int y) //次幂  {  int i=2;  for(;i<=y;i++)  x=x*x;  return x; }   int main (){ int f=1,i=1; //符号,基础变量  double d,sum=0,x; //当前总数,最后的数字,x用户输入的弧度。  printf("请输入x弧度,程序计算正弦值。"); scanf("%lf",&x); do {   d=mi(x,i)/jiecheng(i);  //每一项的分数值    sum=sum +(d*f);    //总值等于每一项相加 (加符号)   f=-f;      //正负转换   i+=2;      //i每次递增2   } while(d>0.000001);   printf("弧度%g的正弦为%lf\n",x,sum);  return 0; }

谢谢各位老师

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值