项目10-太乐了
/* *Copyright (c) 2016,煙臺大學計算機與控制工程學院 *All rights reserved. *文件名稱:main.cpp *作 者:秦超 *完成日期:2016年3月22日 *版 本 號:v1.0 * *問題描述:話說sin和cos是一對夫婦。一天,sin去聽相聲了,cos在家。過了一會,有人敲門, *cos開門一看,是一個不認識的多項式函數。cos問:你是誰啊?他說:我是你的老公sin啊。cos說: *你不是去聽相聲了嗎?怎么成這幅摸樣了?他說:是啊,太樂了!用sin和cos的泰勒展開式編程序, *求出sin(π/2)、sin(56°)、當最后一項的絕對值小于0.00001時,累加結束(求絕對值的函數也可以自定義函數myabs實現)。 *輸入描述:無 *輸出描述:輸出sin(π/2)、sin(56°)的值。 */
代碼:
#include <iostream> using namespace std; const double pi=3.1415926; double mysin(double); double myabs(double); int main( ) { cout<<"sin(π/2)的值為"<<mysin(pi/2)<<endl; cout<<"sin(56°)的值為"<<mysin((56.0/180)*pi)<<endl; return 0; } double mysin(double x) { double sum=x,num=x,term; int n=1,den=1,sign=1; do { den=den*(n+1)*(n+2); num=x*x*num; sign=-sign; term =num/den*sign; sum=term+sum; n=n+2; } while(myabs(term)>1e-5); return sum; } double myabs(double x) { return ((x>=0)?x:-x); }
運行結果:
總結
- 上一篇: 推荐软考刷题工具
- 下一篇: python列表生成器二维筛选_如何加速