C语言利用泰勒公式,计算sin(x)!
来源:学生作业帮 编辑:拍题作业网作业帮 分类:综合作业 时间:2024/04/27 18:30:50
C语言利用泰勒公式,计算sin(x)!
麻烦你教我一下,跪求,谢谢大神
麻烦你教我一下,跪求,谢谢大神
#include <stdio.h>
#include <math.h>
int jiecheng(int n)
{
\x09int result = 1;
\x09if(n==0) return result;
\x09else
\x09{
\x09\x09while(n)
\x09\x09{
\x09\x09\x09result *= n;
\x09\x09\x09n--;
\x09\x09}
\x09\x09return result;
\x09}
}
double dsin(double x)
{
\x09double result = x;
\x09int n = 3;
\x09int sign = -1;
\x09double temp;
\x09while(1)
\x09{
\x09\x09temp = pow(x,n)/jiecheng(n);
\x09\x09if(temp<0.000001)return result;
\x09\x09temp *= sign; //变号控制
\x09\x09result += temp;
\x09\x09n +=2;
\x09\x09sign *=-1;
\x09}
}
int main()
{
\x09double p;
\x09p = 1;
\x09printf("%lf %lf", dsin(p),sin(p));
\x09return 0;
}
//double类型的数据有误差,但是结果在可接受范围内
//是利用泰勒展开进行运算,测试了sin(1)
//阶乘可能会溢出
#include <math.h>
int jiecheng(int n)
{
\x09int result = 1;
\x09if(n==0) return result;
\x09else
\x09{
\x09\x09while(n)
\x09\x09{
\x09\x09\x09result *= n;
\x09\x09\x09n--;
\x09\x09}
\x09\x09return result;
\x09}
}
double dsin(double x)
{
\x09double result = x;
\x09int n = 3;
\x09int sign = -1;
\x09double temp;
\x09while(1)
\x09{
\x09\x09temp = pow(x,n)/jiecheng(n);
\x09\x09if(temp<0.000001)return result;
\x09\x09temp *= sign; //变号控制
\x09\x09result += temp;
\x09\x09n +=2;
\x09\x09sign *=-1;
\x09}
}
int main()
{
\x09double p;
\x09p = 1;
\x09printf("%lf %lf", dsin(p),sin(p));
\x09return 0;
}
//double类型的数据有误差,但是结果在可接受范围内
//是利用泰勒展开进行运算,测试了sin(1)
//阶乘可能会溢出
C语言利用泰勒公式,计算sin(x)!急
C语言利用泰勒公式,计算sin(x)!
C语言根据泰勒公式计算sin(x),
c语言求sin x 近似值(算法是泰勒公式)求改错
c语言编程 求sin(x)的近似值 描述:利用公式求sin(x)的近似值(精度为10e-6).sin(x)=x-x^3/
C语言编程泰勒公式的计算e^x=1+x+x2/2!+x3/3!+.+xn/n!
sin(sin x)用泰勒公式展开
利用C语言实现如下公式的计算
泰勒公式 求sin(X方)佩亚诺余项的麦克劳林公式
C语言求cos精确值 泰勒公式
利用泰勒公式求limx趋于0e^(tanx)-1/x极限
利用泰勒公式展开f(x)=ln(1+sinx)