题目:
输入x值,按照公式计算cos(x)的值,直到最后一项小于10-6为止。

cos(x) = 1 - x2/2! + x4/4! - x6/6! + …

思路:

  • 由公式可知,分子x的次方数和分母的阶乘相同,因此可以考虑用同一变量控制。
  • 分母 4!=2! * 3 * 4,分子x4 = x2 * x * x ,因此可以考虑在上一次分母和分子结果的基础上进行计算,而不必重复计算。
  • 每一项的正负号相反,因此可以考虑自定义符号标志控制正负号。
  • 注意:阶乘至少用double存储

实现:

public class cos {public static void main(String[] args) {// TODO Auto-generated method stubScanner reader = new Scanner (System.in);double x = reader.nextDouble();double sum = 1;  //记录最后的和int flag = -1;   //符号标志,第一项为负int n = 2;       //记录次方数double fac = 1;   //记录分母double power = 1;   //记录分子while(power/fac >= 1E-6){power *= x*x;fac = fac * (n-1)* n;sum += flag*power/fac;n = n+2;flag = -flag;    //下一项符号位相反}//     do{
//          fac = 1;
//          for(int i=1;i<=n;i++)      //重复计算了之前算过的阶乘,效率低
//          {//              fac*=i;
//          }
//          double item = flag*Math.pow(x,n)/fac;   //重复计算了之前算过的次方,效率低
//          sum += item;
//          flag = -flag;
//          n = n+2;
//      }
//      while(Math.pow(x, 2)/fac >= 1E-6);System.out.println(sum);}
}

求cos(x)的值(java实现)相关推荐

  1. java中cos计算公式求cos溢出_用台劳公式计算cos x的值

    咱作业要求用台劳公式计算cos x的值 我实在不想因为这种小问题劳烦各路高手,不过这个程序我捣鼓了两天,不知错在何处,总是不出结果,十分苦恼!因为敬请各位,能帮则帮,感激不尽!!! 台劳公式如下 : ...

  2. Java 求a+b的值

    Java 求a+b的值 求取A+B的值并且输出 输入格式 输入为一行,包括了用空格分隔的两个整数 AA.BB(1 \le A, B \le 10001≤A,B≤1000). 输出格式 输出为一行,为 ...

  3. 1123求cos(x)的值1108一组整数求平均

    题目描述 输入一个浮点数x,求cos(x)值,用公式cos(x)=1-x^2/2!+x^4/4!-x^6/6!+x^8/8! 计算. 输入要求 多组输入,输入x的值 输出要求 输出cosx的值,保留两 ...

  4. python输入一个正整数n求下列算式的值_C语言编写程序:输入一个正整数x和一个正整数n,求下列算式的值。,C语言 编写一个程序,输入一个正整数,求出它是几位数。...

    导航:网站首页 > C语言编写程序:输入一个正整数x和一个正整数n,求下列算式的值.,C语言 编写一个程序,输入一个正整数,求出它是几位数. C语言编写程序:输入一个正整数x和一个正整数n,求下 ...

  5. 【数字信号处理】序列傅里叶变换 ( 基本序列的傅里叶变换 | 求 cosωn 的傅里叶变换 | 复变函数欧拉公式 )

    文章目录 一.求 cosωn 傅里叶变换 0.cosωn 序列分析 1.傅里叶变换与反变换公式介绍 2.复变函数欧拉公式介绍 3.求 cosωn 的傅里叶变换推导过程 一.求 cosωn 傅里叶变换 ...

  6. 用C语言编写程序计算cos x 的近似值,输入精度 e 和 x,用下列公式求cos(x)的近似值...

    C语言 输入精度e 和实数x,用下列公式求cos x 的近似值,精确到最后一项的绝对值小于e。 #include  //头文件置顶#include double fact(int n){\ C语言编写 ...

  7. matlab表示t从负无穷到正无穷,求cos(t 3π 4)乘刺激信号从负无穷到正无穷上的积分...

    已知α是锐角,且tan[(π除4)+α]=2,求(sin2α乘cosα-sinα)除(sin2α乘cos2α) tan(α+π/4)=(tanα+1)/(1-tanα)=2(tanα+1)=2(1-t ...

  8. 7-3 蒙特卡罗方法求圆周率 (15 分)(Java)

    7-3 蒙特卡罗方法求圆周率 (15 分)(Java) 可算写出来了 使用蒙特卡洛仿真方法求圆周率.(具体要求见作业指导书 2020-OO第05次作业-2指导书V1.0.pdf ) 输入格式: 从键盘 ...

  9. 求素数的三大算法 —— Java 篇

    求素数的三大算法 -- Java 篇 文章目录 求素数的三大算法 -- Java 篇 算法一 :暴力遍历 思路: 代码: 结果: 算法二:折半范围遍历 思路: 代码: 结果: 算法三:根号范围遍历 思 ...

最新文章

  1. 【hdu 6342】Expression in Memories
  2. 【Python】青少年蓝桥杯_每日一题_9.03_画三角形和半圆相切
  3. php 强制变为整数,强制PHP整数溢出
  4. SUN服务器清除所有报错信息,SUN服务器可能遇到的问题总结.doc
  5. 深度css:关于浮动(float,clear)的图形化理解
  6. 这个开源组织里的项目都是精品
  7. python r语言 数据分析_PythonR语言-将Python和R整合进一个数据分析流程
  8. java Unicode转UTF-8代码
  9. 数据库的增加,删除,更新操作--mysql
  10. RHEL 7 防火墙
  11. 解析 FBX 模型文件作为 Direct3D 的渲染模型
  12. 固定不动的层(兼容IE6)
  13. 转载:Transferring Login Credentials Securely
  14. Android自定义View--Flyme6的Viewpager指示器
  15. 清华计算机类专业介绍,清华大学研究生专业介绍:计算机技术
  16. 【python】批量获取企业公司的统一社会代码
  17. ubuntu系统 有线网络无法通过网页认证上网
  18. win10开机启动文件夹路径
  19. spring boot 快速入门
  20. 盘点2018云栖大会的黑科技

热门文章

  1. 关于最优控制的一些总结1
  2. selenium 教程
  3. CSS中p和span有什么区别
  4. My97DatePicker日历控件基本用法
  5. dopra linux 补全shell,~HS8145C补全SHELL教程,送给同是新手的猫友们~
  6. Wireless Communication学习笔记-路径损耗,阴影和多径效应
  7. 5G无线技术基础自学系列 | 密集组网
  8. 巴黎不哭!十亿数据精准扫描,帮卡西莫多重新找回他的玫瑰花窗
  9. 计量经济学计算机答案第三章课后答案,计量经济学第三章习题及答案
  10. 火热朝天?现在的技术VC该何去何从