MIT课程笔记-01找平方根

今天看到了一个很有趣的例题:
如何教会电脑找到一个数的平方根?

刚看到这个题,我第一印象就觉得好难,如果是4、9、16这样的数还好,就对应着2、3、4,但是如果是2、3这样的数呢?该怎么教会电脑开平方根?

后来看了老师演示的过程,瞬间有种才知道大清亡了的感觉……

过程是这样,假设要找数字y的平方根,可以让电脑先在0到y中随机选一个数字x,然后带入公式(y/x+x)/2,得到一个新的x,然后用新的x再带入公式(y/x+x)/2中,再得到一个新的x的值,直到x在代入公司前后的值的差达到一个你需要的精度(比如0.01,0.00001等等),然后让电脑结束代入,这个x值就是数字y的平方根了。

比如找9的平方根,精确到0.001
我们先随机选6带入,得到新的值为3.75,
然后用3.75代入,得到新值3.075,
然后用3.075代入,得到新值3.00091463,
再用3.00091463代入,得到3.00000014,
这时代入公式前后的值差别已经远小于0.001了,所以停止取值3.00000014,精确到0.001后取值3.000。

同样,再用3举例,结果精确到0.001。
先随机选1代入,得2,
用2代入,得1.75,
用1.75代入,得1.73214286,
用1.73214286代入,得1.73205081,
这时这时代入值前后差已经远小于0.001,所以结果取值1.73205081,精确到0.001得1.732。

看似很复杂的过程,但是在电脑上却是瞬间就出来,不得不赞叹程序员的聪明,也不得不赞叹电脑的强大。

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 首页 资讯 文章 资源 小组 相亲 登录 注册 首页 最新文章 IT 职场 前端 后端 移动端 数据库 运维 其他...
    Helen_Cat阅读 9,415评论 1 10
  • Lua 5.1 参考手册 by Roberto Ierusalimschy, Luiz Henrique de F...
    苏黎九歌阅读 14,750评论 0 38
  • TF API数学计算tf...... :math(1)刚开始先给一个运行实例。tf是基于图(Graph)的计算系统...
    MachineLP阅读 9,239评论 0 1
  • 在C语言中,五种基本数据类型存储空间长度的排列顺序是: A)char B)char=int<=float C)ch...
    夏天再来阅读 8,879评论 0 2
  • 姓名 :张文达 【日精进打卡第316天】 【知~学习】1、背诵六项精进和大学各1遍; 2、《京瓷哲学》摘抄:在京瓷...
    文达_心动驿站阅读 1,436评论 0 0

友情链接更多精彩内容