用C++编写函数mySin(x)计算正弦函数,请问如何搞定?介绍一种经典的算法,适合初学者,不要太复杂

[复制链接]
查看11 | 回复3 | 2009-7-3 22:22:13 | 显示全部楼层 |阅读模式
最好给出现成的程序加注释,在下有点忙,对C++也不是太懂,交差事的……

回复

使用道具 举报

千问 | 2009-7-3 22:22:13 | 显示全部楼层
#include #include #define PI (4*atan(1))#define ep 1e-6 //误差double mySin(double x){
//sin(x)=(x)-((x)^3/(3!))+((x)^5/(5!))-((x)^7/(7!))...
int i;//项数
double c=1,s=0,xn;
//c为x^n前的系数,s为前n项的和,xn为x^n
int flag;
if(x<0) return -mySin(-x);
x=fmod(x,2*PI);
if(x<PI/2) {...
回复

使用道具 举报

千问 | 2009-7-3 22:22:13 | 显示全部楼层
学过泰勒级数没?高数上的。把sinx展开,变为一个多项式,sinx = 。。。。。。。。。。。。。。。。展开多少项,看你的精度要求,最后一项的绝对值就是精度。公式记不住了,自己搜搜看...
回复

使用道具 举报

千问 | 2009-7-3 22:22:13 | 显示全部楼层
Taylor展开,数值逼近....
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行