目录

一、问题描述

二、问题分析

三、程序设计描述

四、程序实现


一、问题描述

对给定的x计算出相应的的值


二、问题分析

用Taylor公式将 展开,其形式如下:

那么,并且有如下关系:

根据上面各项的关系,可以看出,前一项的运算结果可以参与下一项的运算(条件的递归化处理),从而减少计算的次数,提高效率。由于sinx是周期函数,故可将化为来处理,即使用弧度作为运算的度量。


三、程序设计描述

设置三个变量dSin、dDegree和dTemp,

分别存放sinx的值、用户输入的角度和泰勒展开式中一个项的值。

运算时,由于程序不能做无限制运算,因此,需要考虑展开多少项才能够满足计算的需求。为此,设置变量dMin来控制运算的精度,当展开式的某项值小于它的时候,结束展开式的运算。

算法:

根据相邻两项的关系,以迭代的方式,可以计算出泰勒公式中的每一项的值,经过累加就可以得出sinx的值。


四、程序实现

#include<stdio.h>
#include<stdlib.h>
#include<math.h>
#include<conio.h>
void main()
{double dSin = 0.0, dTemp = 1.0, dArc = 0.0;double pi = 3.1415926, dMin = 0.000001, dDegree = 0.0;int k = 1;printf("请输入角度:");scanf("%lf", &dDegree);dArc = dDegree * pi / 180;//角度转化为弧度进行计算dTemp = dArc;while (fabs(dTemp) > dMin){dSin += dTemp;k += 2;//提高效率dTemp = (-1) * dTemp * dArc * dArc / (k*(k-1));}printf("sin(%f)= %.2lf", dDegree, dSin);getchar();//让程序暂停,查看结果
}

C语言实现sin函数的程序设计相关推荐

  1. 用泰勒公式编写一个sin函数--C语言

    通过麦格劳林展开式,来编写一个sin函数,C语言内置了三角函数,这个三角函数在   #include<math.h>  的头文件下要输入角度数,是有着需要先将角度转化为弧度在进行使用,我编 ...

  2. 【小程序】C语言实现简易钢琴-利用sin函数构造不同频率波形模拟各琴键发音

    根据钢琴音调频率对照表,使用sin函数构造对应频率正弦波数据模拟各琴键声音,实现简易钢琴效果,结果写入wav文件中. 目录 程序效果 实现过程 样例代码 测试用例 参考资料 程序效果 截图1:键位图 ...

  3. 使用go语言画出sin函数图像

    sin函数图像--go语言 步骤 创建底图对象 画sin图 保存图像到文件 图片展示 步骤 创建一张底色为白色的图片对象 画出sin图像 保存到文件中 创建底图对象 //设置图片尺寸 pir := i ...

  4. C语言sin函数实现(基于泰勒公式)

    文章目录 一.泰勒公式 二.思路分析 1.sin函数的泰勒展开式: 2.弧度制计算 3.设定常量 三.完整代码 一.泰勒公式 单片机如果不调用库,只进行加减运算,亦或宽泛点来说能进行加减乘除运算,那不 ...

  5. c语言中 允许函数重载么,简述C++语言支持函数重载问题介绍

    对于C++语言作为一种欲与C兼容的语言,C++语言保留了一部分过程式语言和特点,foo_int_int这样的名字包含了函数名.函数参数数量及类型信息,C++语言就是靠这种机制来实现函数重载的. 因而它 ...

  6. c语言实验七 函数实验报告,C语言实验七函数实验报告.doc

    C语言实验七函数实验报告 C语言程序设计 实 验 报 告 实验题目 实验七 函数 实验目的 掌握函数定义的方法: 掌握函数实参与形参的对应关系,以及值传递的方式. 掌握函数的嵌套调用和递归调用的方法: ...

  7. 大学生学习c语言方法,针对在校大学生的C语言入门学习——函数

    为什么要使用函数如果你没有接受过系统的训练就能主动想要封装函数,说明你在编程上是一个天才,千万不要辜负自己的天赋!函数在语法上并不难理解,但是什么时候使用函数才合理呢? 我们不妨来做一个猜谜游戏--& ...

  8. c语言程序报告英汉词典,C语言电子英汉词典程序设计报告-自动化1203-李煜明.docx...

    C语言电子英汉词典程序设计报告-自动化1203-李煜明 课 程 设 计 报 告课程名称 C语言课程设计 课题名称 电子英汉词典 专 业 自动化 班 级 1203 学 号 201201020304 姓 ...

  9. c语言中fflushstdin作用,C语言fflush(stdin)函数是什么意思,在什么情况下用它

    C语言fflush(stdin)函数是什么意思,在什么情况下用它 來源:互聯網  2009-04-22 18:49:31  評論 分類: 電腦/網絡 >> 程序設計 >> 其他 ...

  10. c语言中规定,程序中各函数之间,C语言题库-函数_(参考).doc

    C语言函数练习题 选择题 1.在函数的说明和定义时若没有指出函数的类型,则( A ) A: 系统自动地认为函数的类型为整型. B: 系统自动地认为函数的类型为字符型. C: 系统自动地认为函数的类型为 ...

最新文章

  1. android studio 学习入门篇
  2. 【设计模式】软件设计七大原则 ( 开闭原则 )
  3. CentOS 6.8 GRUB加密-修复和破解密码实战指南
  4. redux-form(V7.4.2)笔记(一)
  5. 使用ant触发Tomcat的reload操作
  6. 草稿 断开始datagrewvies 01
  7. 2016年下半年信息安全工程师考试真题含答案(下午题)
  8. C语言 pthread_cancelpthread_detach
  9. Leetcode每日一题:面试题 08.02. 迷路的机器人
  10. C++之printf格式
  11. opengl 矩阵投影代码 shade_LookAt、Viewport、Perspective矩阵
  12. Java项目:医院门诊收费管理系统(java+html+jdbc+mysql)
  13. 博弈论模型(巴什博弈)
  14. python 人脸识别活体检测_人脸识别 -- 活体检测(张嘴摇头识别)
  15. 语音合成芯片——SYN6658
  16. EXFAT文件系统DBR的完美恢复
  17. 移动端页面底部导航被浏览器工具栏遮盖解决方法
  18. idea的git报错You have not concluded your merge
  19. 在tsx里写html模板,在Vue中写TSX有哪些需要注意的地方
  20. cpda和cda区别与联系

热门文章

  1. mysql卸载详细教程
  2. C++中字符编号ASCII码表
  3. 数据结构--二叉树的二叉链表实现
  4. AIX 系统默认ftp
  5. QQ-AR实物识别!香蕉扫一扫,解救小黄人?
  6. 【WAX链游】发布一个免费开源的Alien Worlds【外星世界】脚本TLM
  7. PDF文档转换成mobi格式(for kindle),并解决排版问题
  8. js 使用Rsa 加密 解密
  9. 怎么把word转换ppt?
  10. co2激光切割机控制系统上位机C#源码,stm32f407控制板源码,可用于雕刻机,切割机,写字机,点胶机