c语言泰勒展开式sin,【C++ 程序】 sin(x)的泰勒展开

本文介绍了一种使用C++编程语言通过泰勒展开式计算sin(x)的方法,强调了避免直接求阶乘以防止溢出的问题,并提醒读者寻找递推关系式以优化程序。此外,还提供了示例代码以及一系列C++编程练习项目链接。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

C++是如何计算sin(x)的呢?其实使用泰勒展开来算的。下面不直接调用sin(x)来写一下程序:

程序

#include

using namespace std;

constexpr double pi = 3.1415926535897932384625;

double ret = 1;

long double _fac(long double num1)

{

ret /= num1;

if (num1 == 1)

return ret;

else return _fac(num1 - 1);

}

double my_sin(double num)

{

while (num > pi)

num -= pi;

while (num < -pi)

num += pi;

double ret = 0;

double sign = 1;

for (double i = 1; i <= 99; i += 2)

{

ret += sign * pow(num, i) * _fac(i);

sign = -sign;

::ret = 1; // call the global ret

}

return ret;

}

int main()

{

double n;

cin >

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值