第13周报告2:
实验目的:学会使用自定义函数解决实际问题
实验内容:定义自定义函数,计算sin和cos的近似值
* 程序头部注释开始(为避免提交博文中遇到的问题,将用于表明注释的斜杠删除了)
* 程序的版权和版本声明部分
* Copyright (c) 2011, 烟台大学计算机学院学生
* All rights reserved.
* 文件名称:<wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><br>
* 作<wbr><wbr><wbr> 者:<wbr><wbr><wbr><wbr><wbr><wbr><wbr>雷恒鑫<wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><br>
* 完成日期:<wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr>2011 年<wbr><wbr>11<wbr><wbr><wbr><wbr> 月<wbr><wbr>16<wbr><wbr><wbr><wbr><wbr> 日<br>
* 版本号:<wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><br><br>
* 对任务及求解方法的描述部分<br>
* 输入描述:无<br>
* 问题描述:自定义函数,用泰勒公式实现计算sin和cos的近似值,要求:(1)求sin、cos时,不能用数学库函数(即不得用#include<Cmath>),而是自己编函数实现,为区别,可以分别起名为mysin和mycos;(2)自定义函数要写在main函数之后;(3)自定义函数的效率问题必须考虑;(4)关于精度:当最后一项的绝对值小于0.00001时,累加结束。<br>
* 程序输出:sin(π/2)、cos(87°)的值(提示:用泰勒公式在π/2附近误差较大,输出分别为0.911557和-0.26322,而真值分别为1和0.052336,当度数较小时,效果要好一些,请自行对比。)<br>
* 问题分析:……<br>
* 算法设计:使用泰勒公式<br>
* 程序头部的注释结束(此处也删除了斜杠)<br>
#include <iostream><wbr><wbr><br>
#include<Cmath><wbr> //为便于对比结果,main函数中调用了Cmath中的库函数sin和cos<br>
using namespace std;<br>
const double pi=3.1415926;<br>
double mysin(double);<br>
double mycos(double);<br>
double myabs(double);<wbr><wbr> //程序中需要求精度的绝对值,也用自定义函数完成吧<br>
int main( )<br>
{<br>
cout<<"sin(π/2)的值为"<<mysin(pi/2)<<endl;<br>
cout<<"cos(87°)的值为"<<mycos((87.0/180)*pi)<<endl;<br>
cout<<"sin(π/2)的更精确的值为"<<sin(pi/2)<<endl;<wbr> //库函数提供的值<br>
cout<<"cos(87°)的更精确的值为"<<cos((87.0/180)*pi)<<endl;<br>
return 0;<br>
}<br>
//下面定义mysin函数<br>
double mysin (double a)<br>
{<br><wbr><wbr><wbr> double b=0,w=1,m=2,n=3,t=0,sum=0,sign=1;<br><wbr>b=a;<br><wbr>t=b/w;<br><wbr>do<br><wbr>{<br><wbr><wbr>sum=sum+sign*t;<br><wbr><wbr>w=w*m*n;<br><wbr><wbr>m=m+2;<br><wbr><wbr>n=n+2;<br><wbr><wbr>b=b*a*a;<br><wbr><wbr>t=b/w;<br><wbr><wbr>sign=-sign;<br><wbr><wbr><br><wbr>}while (t>=0.00001);<br><wbr>return sum;<br>
}<br><br><br>
//下面定义mycos函数<br><br><wbr> double mycos (double a)<br>
{<br><wbr><wbr><wbr><wbr> double b=1, w=1,m=1,n=2,t=0,sum=0,sign=1;<br><wbr>t=b/w;<br><wbr>do<br><wbr>{<br><wbr><wbr>sum=sum+sign*t;<br><wbr><wbr>w=w*m*n;<br><wbr><wbr>m=m+2;<br><wbr><wbr>n=n+2;<br><wbr><wbr>b=b*a*a;<br><wbr><wbr>sign=-sign;<br><wbr>t=b/w;<br><wbr>}while(t>=0.00001);<br><wbr>return sum;<br>
}<br>
//下面定义myabs函数<br>
double myabs(double)<br>
{<br><wbr>double t;<br><wbr>if (t<0)<br><wbr><wbr>t=-t;<br><wbr>else<br><wbr><wbr>t=t;<br><wbr><wbr>return t;<br>
}<br><br><br>
运行结果:</wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr>
经验积累:
1. 做科学计算时,需要对所用方法的数学性质有所了解,计算误差要引起注意
2.
3.
上机感言:我知道了调用函数前最好应把声明放在主函数之前;
分享到:
相关推荐
用字符文件提供数据建立带权网络存储结构。编写程序,输出该图中的最短回路(包括回路上的顶点序列以及回路的长度)。提示:用迪杰特斯拉算法或弗洛依德算法求出所有结点自已到自己的最短路径,选出其中的最小值即为...
目前用GaussianProcess模型得到的训练结果最好,一下为部分训练结果:1、Agreeableness 宜人性:Options: -L 1.0 -N 0
北京商品住宅新开盘监测报告(第50周)(2020.12.07-2020.12.13)精品报告2020.pdf
2024年第13周热门游戏营收数据
有色金属行业周报(第五十周)2020 年12 月13 日精品报告2020.pdf
光大地产A+H样本库动态跟踪报告(2019年第37周,09.07-09.13):监管表态未控房贷增量,本周地产板块跑赢大盘.pdf
食品饮料周思考(第13周):白酒关注Q1业绩弹性,啤酒结构升级加速.pdf
电力设备与新能源行业1月第2周周报:第十三批新能源汽车推广目录发布.pdf
20200329-方正证券-传媒行业数据周报(2020年第13周):VR游戏诞生首个爆款.pdf
有色钢铁行业周策略(2020年第13周):钢价上涨或受库存压制,锂钴价格走势分化.pdf
化工行业2018年第13周周报:有机硅、纯碱价格上涨.pdf
电力设备第33周周报:中环集体上调硅片报价,宁德时代拟定增募资582亿.pdf
新能源设备第2周周报:第13批推荐目录落地,新能源乘用车车占比达55.8%.pdf
2019年第13周地产周报:楼市开始复苏,全面看好地产板块.pdf
光大地产A+H样本库动态跟踪报告(2019年第35周):49城楼市累计+13%,百城地市累计-5%.pdf
光大地产A+H样本库动态跟踪报告(2019年第35周):49城楼市累计+13%,百城地市累计-5%
电子行业2019年第13周周报:存储器价格持续下滑,美光宣布削减产能.pdf
2020年第13周地产周报:业绩兑现稳定增长,建议把握确定性投资机会.pdf
机械设备行业第13周周报:工业机器人产量大增,看好半导体行业景气度.pdf