用c语言便编写输入x和n求sin函数的泰勒公式的代码
时间: 2024-05-12 22:17:43 浏览: 106
prograjkesodrcefor,c语言sin函数源码,c语言
以下是可以使用 C 语言编写的计算 sin 函数泰勒公式的代码:
```
#include <stdio.h>
#include <math.h>
double fact(int n) // 阶乘函数
{
double result = 1;
for (int i = 1; i <= n; i++) {
result = result * i;
}
return result;
}
double powx(double x, int n) // x 的 n 次方函数
{
double result = 1;
for (int i = 1; i <= n; i++) {
result = result * x;
}
return result;
}
double sinx(double x, int n) // 计算 sin(x) 的泰勒公式
{
double result = 0;
int sign = 1;
for (int i = 1; i <= n; i += 2) {
result = result + sign * powx(x, i) / fact(i); // 计算每一项的值
sign = -sign; // 符号取反
}
return result;
}
int main()
{
double x;
int n;
printf("请输入 x 和 n 的值:\n");
scanf("%lf %d", &x, &n);
x = fmod(x, 2 * M_PI); // 把 x 转化到 [-π, π] 范围内
printf("sin(%lf) 的泰勒公式前 %d 项的值为:%lf\n", x, n, sinx(x, n));
return 0;
}
```
注意:由于泰勒公式只有在 $x$ 趋近于 $0$ 的时候才会收敛,因此需要对 $x$ 进行归约到 $[-\pi, \pi]$ 的操作,否则结果可能不正确。
阅读全文