本题要求实现一个函数,用下列公式求cos(x)的近似值,精确到最后一项的绝对值小于e:

cos(x)=x0/0!−x2/2!+x4/4!−x6/6!+⋯
函数接口定义:

double funcos( double e, double x );

其中用户传入的参数为误差上限e和自变量x;函数funcos应返回用给定公式计算出来、并且满足误差要求的cos(x)的近似值。输入输出均在双精度范围内。
裁判测试程序样例:

#include <stdio.h>
#include <math.h>

double funcos( double e, double x );

int main()
{
double e, x;

scanf("%lf %lf", &e, &x);
printf("cos(%.2f) = %.6f\n", x, funcos(e, x));return 0;

}

/* 你的代码将被嵌在这里 */

输入样例:

0.01 -3.14
结尾无空行

输出样例:

cos(-3.14) = -0.999899

#include <stdio.h>
#include <math.h>double factorial(int z) {double sum1 = 1;for (int i = 1; i <= z; i++) {sum1 *= i;}return sum1;
}//阶乘double funcos(double e, double x) {double sum = 0;int cnt = 0;int p = 1; //判断该加还是减for (int i = 0; ; i += 2) { double a = pow(x, i);double b = factorial(i);double c = a / b;if (p == 1) {sum += a / b;p = -p; //取反cnt++;}else if (p == -1) {sum -= a / b;p = -p;cnt++;}if (pow(x, i+2) / factorial(i+2) < e) {   //判断for循环是否退出语句,如果直接写for循环里会少一项if (p == 1) {                         sum += pow(x, i + 2) / factorial(i + 2);}else if (p == -1) {sum -= pow(x, i + 2) / factorial(i + 2);}break;}}return sum;
}

这题的坑就是条件中的"精确到最后一项的绝对值小于e",如果用for循环 条件为Xn次方/6! 很容易丢失最后一项,因为他判断小于e之后就跳出了 小于e的第一项没算进去导致错误

习题5-7 使用函数求余弦函数的近似值相关推荐

  1. 习题5-7 使用函数求余弦函数的近似值 (15 分)

    习题5-7 使用函数求余弦函数的近似值 (15 分) 本题要求实现一个函数,用下列公式求cos(x)的近似值,精确到最后一项的绝对值小于e: 函数接口定义: double funcos( double ...

  2. 习题5-7 使用函数求余弦函数的近似值 (15分)

    作者: C you again,从事软件开发 努力在IT搬砖路上的技术小白 公众号: [C you again],分享计算机类毕业设计源码.IT技术文章.游戏源码.网页模板.程序人生等等.公众号回复 ...

  3. 6-10 使用函数求余弦函数的近似值 (15 分)本题要求实现一个函数,用下列公式求cos(x)的近似值,精确到最后一项的绝对值小于e:cos(x)=x0/0!−x2/2!+x4/4!−x6/

    6-10 使用函数求余弦函数的近似值 (15 分) 本题要求实现一个函数,用下列公式求cos(x)的近似值,精确到最后一项的绝对值小于e: cos(x)=x0/0!−x2/2!+x4/4!−x6/6! ...

  4. 使用函数求余弦函数的近似值 (15 分)

    使用函数求余弦函数的近似值 (15 分) 本题要求实现一个函数,用下列公式求cos(x)的近似值,精确到最后一项的绝对值小于e: cos(x)=x0/0!−x2/2!+x4/4!−x6/6!+⋯ 函数 ...

  5. 习题5-7 使用函数求余弦函数的近似值(15 分)

    本题要求实现一个函数,用下列公式求cos(x)的近似值,精确到最后一项的绝对值小于e: cos(x)=x​0​​/0!−x​2​​/2!+x​4​​/4!−x​6​​/6!+⋯ 函数接口定义: dou ...

  6. 使用函数求余弦函数的近似值_WPS-Excel表格实用技巧-排名函数RANK函数的使用

    平时使用excel表格处理数据时经常会用到排序功能,一般使用"升序"和"降序"工具按钮就可以完成简单的排序任务,但是当我们遇到相同数值在总体中的排名时,简单的& ...

  7. 6-5 使用函数求余弦函数的近似值 (15分)

    本题要求实现一个函数,用下列公式求cos(x)的近似值,精确到最后一项的绝对值小于e: cos(x)=x​0​​/0!−x​2​​/2!+x​4​​/4!−x​6​​/6!+⋯ 函数接口定义: dou ...

  8. 6-3 使用函数求余弦函数的近似值

    double funcos(double e,double x){     double n=2;//从第二个开始     double t=1;//x^0/0!,这个一定会有的//初始的判断条件   ...

  9. c++实验2:6-4 求余弦函数近似值

    6-4 使用函数求余弦函数的近似值 (15 分) 本题要求实现一个函数,用下列公式求cos(x)的近似值,精确到最后一项的绝对值小于e: cos(x)=x ​0​​ /0! − x2/2! + x4/ ...

最新文章

  1. C++ OJ 中多行数据输入(大小写转换、通过移位运算实现2的n次方、多组输入,每行输入数量不一样)
  2. sql增删改查_增删改查!sql2pandas方法手册
  3. 015_视图(Views)
  4. 讲oracle个阶段书籍6,经典图书推荐系列-之六
  5. MySQL(十一)视图及存储过程
  6. 技术转管理?这些“坑”你要绕道走
  7. 深度学习笔记(二):简单神经网络,后向传播算法及实现
  8. CSS预处理器和后处理器
  9. Java判断操作系统是32位还是64位
  10. Unity3D 串口连接
  11. uboot - 配置过程1(分析国产君正的ingenic-linux-kernel3.10.14-x1000-v8.2-20181116\u-boot\mkconfig脚本)
  12. 【多轮对话】任务型多轮对话数据集和采集方法
  13. 学习太极创客 — ESP8226 (一)
  14. 华为云内网DNS地址大全(不同区域DNS地址)
  15. excel表格打印每页都有表头_excel打印如何每页都有表头 最常用的办公小技巧
  16. 汽车行业如何借助微信小程序引流
  17. amoeba mysql exists_Amoeba实现MySQL数据库读写分离
  18. DNS和BIND总结
  19. Pika的设计与实现
  20. 25岁之前,男生一定要知道的30条人生忠告!!!

热门文章

  1. 谷歌seo加快收录的方法,怎么提高google收录?
  2. C语言学习 计算个人所得税
  3. MySQL 将 字符串 转为 整数
  4. 多核系统内存假共享问题
  5. mysql percona_推荐使用percona版mysql | 学步园
  6. linux 安装office
  7. iPhone App开发实战手册
  8. 翻译Murano—OpenStack,来自wiki.openstack.org/wiki/Murano(2015.7.3Update)
  9. HTC Desire 816、610齐发 1300万相机9900元抢市
  10. 使用STM32在SPI模式下读写SD卡