/*
* 程序的版权和版本声明部分
* Copyright (c)2012, 烟台大学计算机学院学生
* All rightsreserved.
* 文件名称: fun.cpp
* 作 者: 徐汉玉
* 完成日期:2012 年11 月15 日
* 版本号: v1.0
* 对任务及求解方法的描述部分
* 输入描述:
* 问题描述: 老师看不懂
* 程序输出: */#include<iostream>
using namespace std;
const double pi=3.1415926;
double myabs(double x)
{
return ((x>=0)?x:-x);
}
int main()
{
double mysin(double x);
double mycos(double x);
cout<<""<<mysin(pi/2)<<endl;
cout<<""<<mysin((56/180)*pi)<<endl;
cout<<""<<mycos((87/180)*pi)<<endl;
cout<<""<<mycos(pi/3)<<endl;
return 0;
}
double mysin(double x)
{
double sum=x,j=x,item;
int n=1,fact=1,sign=1;
do
{
fact=fact*(n+1)*(n+2);
j*=x*x;
sign=-sign;
item =j/fact*sign;
sum+=item;
n+=2;
}while(myabs(item)>1e-5);
return sum;
}
double mycos(double x)
{
double sum=1,j=1,item;
int n=0,fact=1,sign=-1;
do
{
fact=fact*(n+1)*(n+2);
j*=x*x;
item =j/fact*sign;
sum+=item;
sign=-sign;
n+=2;
}while(myabs(item)>0.00001);
return sum;
}
运行结果: