百科问答小站 logo
百科问答小站 font logo



计算器或计算机如何进行比较复杂的数学计算? 第1页

  

user avatar   haruakira 网友的相关建议: 
      

谢邀。

对于问题中的部分名词表述已进行修改。

计算器或者计算机要进行复杂的运算,主要是利用数值计算方法的原理,或是将各种数学函数变换变为只有加减乘除的多项式,或是使用迭代的方式计算,或是近似计算等等。以下以多项式和迭代的两种方法进行举例说明:

(1)多项式法——幂级数的部分和

以 为例,利用幂级数展开式,有 (其中 ),使用fx-991CN X计算器尝试用这个式子的部分和数列来计算 。在表格模式里面,输入上面的和式,令 ,将 用计算器上的变量 代替,范围指定从1到10,步长为1:(角度单位为弧度

可以看到,对于一台函数计算器来说,使用幂级数展开的部分和计算正弦函数( 从 到 )的时候,仅仅需要前面的几项之和便可以得到较精确的结果,这样的单个函数的计算量对于计算器里面的处理器来说是非常少而且轻松的,因此眨眼就能给出结果。能够计算 了, 和 就不用多说了。

对数函数:

指数函数:

反三角函数:由 ,将 替换为 ,又 ,对级数逐项积分即可。

(2)迭代法

以开平方为例。例如计算 (即 ),利用上面的多项式法计算 虽然可行,但计算器里面的算法要越快越好。如果某种迭代法可以使得迭代迅速收敛,那么就可以提高计算速度。

求一个数 的平方根,即解方程 ,令 ,使用牛顿迭代法有 ,因此有 。首先可以简单估计迭代的初始值为 ( ),然后作迭代:

可以看到,仅仅迭代了三次,结果的准确程度就已经至少到第10位了。

——————————分割线——————————

除此之外,还有许多其他的算法,例如阶乘计算就有近似计算的公式: 。

经过以上的处理得到的结果,再进行精度判断,确认小于某个值之后计算器就可以将结果给出来了。当然了,以上只是单个函数可能的计算原理,实际的计算器内部算法不一定与如上所述的算法相同。对于复杂的式子,还需要先进行算式的优先级判断,然后再按顺序去处理每一步的计算结果等等后续的处理过程。




  

相关话题

  Windows系统控制台初始界面为什么是黑色的?用黑色的意义在哪? 
  如何让一个 5 岁小孩听懂什么是选择公理? 
  《JoJo的奇妙冒险 2》中大结局里卡兹被岩浆喷上外太空是否科学? 
  直角坐标与极坐标的互化中,为什么 dxdy=rdrdθ? 
  有哪些只有数学专业领域的人才懂的笑话? 
  所有正方形的数量与所有长方形的数量相等吗? 
  怎么求x的x次方n阶导? 
  掉发越来越严重了,怎么办? 
  有个计算机大神的男朋友是个什么感觉? 
  数系从有理数扩充为实数的跨越有无产生一些问题? 

前一个讨论
地质行业就业真的很不堪吗?有哪些相关专业相对好转吗?
下一个讨论
想从设备管理改行到机械设计,好改行么?





© 2024-05-10 - tinynew.org. All Rights Reserved.
© 2024-05-10 - tinynew.org. 保留所有权利