实验目的:学会使用自定义函数解决实际问题,学会函数的嵌套调用
实验内容:编制一个三角函数表
* 程序头部注释开始(为避免提交博文中遇到的问题,将用于表明注释的斜杠删除了)
* 程序的版权和版本声明部分
* Copyright (c) 2011, 烟台大学计算机学院学生
* All rights reserved.
* 文件名称:
* 作
* 完成日期:
* 版 本 号:
* 对任务及求解方法的描述部分
* 输入描述:无
* 问题描述:编制一个三角函数表,要求在main()函数中调用show_sin_table(min_angle, max_angle),显示角度值为min_angle到max_angle之间的所有角度(间隔为1度)的正弦值。要求不能用数学库函数,将任务2中的mysin函数拷贝到这个程序中,用于计算sin值。例如show_sin_table(0, 90)可以显示出所有0到90度的正弦值。为取得更好的效果,可以考虑像英尺到米的转换一样,以速查表格的形式给出结果。
* 程序输出:三角函数表
* 问题分析:……
* 算法设计:……
* 程序头部的注释结束(此处也删除了斜杠)
#include <iostream>
using namespace std;
const double pi=3.1415926;
double show_sin_table(double x,double y);
int main()
{
show_sin_table(0, 90);
return 0;
}
double show_sin_table(double x,double y)
{
int i=1,sign=1,a=x;
double mul=1,f=0,b,c;
while((a>=x)&&(a<=y))
{
cout<<a<<" ";
b=(a/180.0)*pi;
c=b;
i=1;
mul=1,f=0,sign=1;
do {
f+=(c*sign)/mul;
c=c*b*b;
sign=-sign;
i+=2;
mul=mul*(i)*(i-1);
}while((c/mul)>=0.00001);
cout<<f<<endl;
a++;
}
return 0;
}
