01./*
02.*程序的版权和版本声明部分:
03.*Copyright(c)2013,烟台大学计算机学院学生
04.*All rights reserved.
05.*文件名称:
06.*作者:张立锋
07.*完成日期:2013年11月15日
08.*版本号:v1.0
09.*对任务及求解方法的描述部分:
10.*输入描述:
11.*问题描述:使用函数输出sin与cos的固定值
12.*程序输出:
13.*问题分析:
14.*算法设计:
15.*/
#include <iostream>
#include<cmath>
using namespace std;
const double pi=3.1415926;
double mysin(double);
double mycos(double);
double myabs(double);
int main( )
{
cout<<"sin(π/2)的值为"<<mysin(pi/2)<<endl;
cout<<"sin(56°)的值为"<<mysin((56.0/180)*pi)<<endl;
cout<<"cos(87°)的值为"<<mycos((87.0/180)*pi)<<endl;
cout<<"cos(π/3)的值为"<<mycos(pi/3)<<endl;
return 0;
}
//下面定义mysin函数,求sin值
double mysin(double x)
{
int a=1,sign=1,n=1;
double sum=x,b=x,c;
do
{
a=a*(n+1)*(n+2);
b*=x*x;
sign=-sign;
c=b/a*sign;
sum+=c;
n=n+2;
}while(myabs(c)>1e-5);
return sum;
}
//下面定义mycos函数,求cos值
double mycos(double x)
{ int a=1,sign=-1,n=0;
double sum=1,b=1,c;
do
{
a=a*(n+1)*(n+2);
b*=x*x;
c=b/a*sign;
sum+=c;
n=n+2;
sign=-sign;
}while(myabs(c)>0.00001);
return sum;
}
//下面定义myabs函数,求绝对值
double myabs(double x)
{
return ((x>=0)?x:-x);
}
运行结果
心得体会
我也写这个程序呢,思路和老师略有不同。但是我那个输出的函数值是乱码。今天看了老师写的程序,借鉴老师的程序,收获很多。