用c语言求sinx的极限值
发布网友
发布时间:2022-04-28 11:41
我来回答
共1个回答
热心网友
时间:2023-10-07 00:16
具体代码如下:思路是:Sin
x
≈x/1
-
x3/3!
+
x5/5!-x7/7!+…….+(-1)n-1x2n-1
/(2n-1)!#include
<stdio.h>double
factorial(double
n){//求n!
double
result=1;
for(int
i=1;i<=n;i++)
{
result*=i;
}
return
result;}double
sinx(double
x,int
n){//求sin(x),精度为n
double
result=0;
bool
bAdd=true;//是加还是减
for(int
i=1;i<=n;i++)
{
if(bAdd)
{
result+=((double)x*(2*i-1)/factorial(2*i-1));
}
else
{
result-=((double)x*(2*i-1)/factorial(2*i-1));
}
bAdd=!bAdd;
}
return
result;}void
main(){
printf("%f\r\n",sinx(0.4,10));}
热心网友
时间:2023-10-07 00:16
具体代码如下:思路是:Sin
x
≈x/1
-
x3/3!
+
x5/5!-x7/7!+…….+(-1)n-1x2n-1
/(2n-1)!#include
<stdio.h>double
factorial(double
n){//求n!
double
result=1;
for(int
i=1;i<=n;i++)
{
result*=i;
}
return
result;}double
sinx(double
x,int
n){//求sin(x),精度为n
double
result=0;
bool
bAdd=true;//是加还是减
for(int
i=1;i<=n;i++)
{
if(bAdd)
{
result+=((double)x*(2*i-1)/factorial(2*i-1));
}
else
{
result-=((double)x*(2*i-1)/factorial(2*i-1));
}
bAdd=!bAdd;
}
return
result;}void
main(){
printf("%f\r\n",sinx(0.4,10));}