能将无理数化为根号形式的计算机,怎么证明根号2是无理数,我们来推导和计算,还有逼格极高的算法...
原标题:怎么证明根号2是无理数,我们来推导和计算,还有逼格极高的算法
记得上学的时候忙着考试,把心头的一些为什么都压在了脑后。
面对未知,我们大多数人都选择了默认接受,其实你不懂根号2,
比如:根号2(√2)为什么是无理数,我们有什么办法去计算它。
当我冒出这个想法的时候,其实大部分人的反映都一样1+1开根号就是啊,至于为什么,就是规定呗,当然把根号作为一种符号确实如此,但是离结果还差了很远。
这个问题追根溯源,会发现远比我们想象的要复杂,得追溯到古希腊时期。
毕达哥拉斯(Pythagoras,约公元前580年至公元前500年间)是古希腊的大数学家,他提出“万物皆为数”的观点。公元前500年,毕达哥拉斯学派的弟子希伯索斯(Hippasus)突然发现好像有些情况解释不了,比如一个正方形的对角线与其一边的长度,这明显与毕氏学派的“万物皆为数”(指有理数)的哲理大相径庭,使得学派领导人很惶恐,最后被毕氏门徒残忍地投入了水中杀害。
要去计算根号2的值,我们可以拆分为两个问题。
1)怎么证明根号2是无理数
2)根号2的无理数值是怎么计算出来的?
我们来从求知的角度来证明下根号2(√2)为什么是无理数?
方法1:尾数证明法:
假设根号2是一个有理数,那么根号2就可以使用a/b的形式来标识,其中(a,b)=1,(表示a 与 b 最大的公因数是1),a和b都是正整数,明确了这些条件,我们就开始证明了。
第1步:√2=a/b 那么可以得到a*a=2*b*b
第2步:从数的平方我们可以很快得到,b*b的尾数范围是 (0,1,4,5,6,9)中的一个数,不可能是2,3,7,8,这个道理不难理解;
第3步:2*b*b的尾数范围是(0,2,8)中的一个数,
第4步:因为a*a=2*b*b,那么a*a的尾数范围可以排除2和8,只有0
第5步:因为2*b*b得到的值肯定是一个偶数,那么b*b的尾数范围是(0,5)
第6步:按照目前的尾数可选项,a和b存在公因数5,和(a,b)=1是相矛盾的。
所以根号2是一个无理数。
方法2:奇偶分析法
假设√2=a/b 那么可以得到a*a=2*b*b,(a,b)=1,(表示a 与 b 最大的公因数是1,a和b都是正整数
1)根据2*b*b可以推得a是一个偶数,我们可以设置a=2c
2)4*c*c=2*b*b得到 b*b=2*c*c,可以得到b也是偶数
3)a,b都是偶数,这和(a,b)=1相矛盾
所以根号2是一个无理数,可以说明的是希帕索斯就是用这种方法证明的。
还有很多种方法补充,差不多有8种左右,我就不一一罗列了。
如何计算根号2的值呢,查找了不少资料,我觉得这几种方法还是能消化的。
方法1:
(√2+1)(√2-1)=1,这是我们参考的一个基准,可以按照这种方式不断的展开。
√2-1=1/(√2+1)
√2 = 1+ 1/(√2+1),继续带入根号2的对等公式
√2 = 1+ 1/(1+ 1/(√2+1)+1)=1+ 1/(2+ 1/(√2+1))
继续推导:
√2=1+ 1/(2+ 1/(√2+1))=1+ 1/(2+ 1/(1+ 1/(√2+1)+1))=1+ 1/(2+ 1/(2+ 1/(√2+1)))
这种方式叫做连分数法,我们可以通过这种不断的迭代可以得到更加精确的值。
方法2:
我们可以很容易得到根号2的范围,明显是大于1的,所以我们可以按照y=x+1的函数来表示,即
√2 = y=1+x
对上式做平方,得到
2=(1+x)(1+x),得到
2=1+x*x+2*x+1,进一步得到,
x*x+2*x=1,推得,x*(x+2)=1,得到
x=1/(x+2),所以
1/x=2+x=2+1/(2*x)=2+1/(2*1/(x+2))
=2+1/(2*1/(1/(x+2)+2))
按照这种方式可以不断的推导,得到更加精确的值。
计算机如何计算根号2
当然还有很多高大上的方法来进一步辅助,比如牛顿迭代法,二分法等
那么如何在计算机中来计算得到根号2呢, 这里要介绍一个传奇算法:算法名字就是:0x5f375a86,看起来像是一个内存地址一样,该算法据说比牛顿迭代法快4倍,核心的代码类似下面这样:
i = 0x5f375a86 - (i>>1);
至今为止仍未能确切知晓此常数的起源 ,值得一提的是这个值最初为0x5f3759df,后来由Lomont通过暴力穷举找到这个更优值,即0x5f375a86
Lomont采用暴力方法逐步尝试,终于找到一个比之前的好那么一丁点的数字,虽然实际上这两个数字所产生的结果非常近似,这个暴力得出的数字是0x5f375a86,为此他写了一篇论文《Fast Inverse Square Root》
点击查看这篇论文,我是被震撼到了。
http://read.pudn.com/downloads500/sourcecode/math/2081845/Fast_Inverse_Square_Root.pdf返回搜狐,查看更多
责任编辑:
能将无理数化为根号形式的计算机,怎么证明根号2是无理数,我们来推导和计算,还有逼格极高的算法...相关推荐
- 怎么证明根号2是无理数,我们来推导和计算,还有逼格极高的算法
这是学习笔记的第 2161 篇文章 记得上学的时候忙着考试,把心头的一些为什么都压在了脑后. 面对未知,我们大多数人都选择了默认接受,其实你不懂根号2, 比如:根号2(√2)为什么是无理数,我们有什么 ...
- 几倍根号用学生计算机,几倍根号几怎么算不要网上抄的 祥细的 例如2√2 3√3 4√4 怎么算...
二次根式被开方数不能含开得尽的因式或因数,是要求把二次根式化简成"最简二次根式". 例题一:1.根号(a^2)=a的绝对值 2.根号4=2 3.根号8=根号(2^3)=根号(2^2 ...
- 根号6用计算机怎么算,根号6等于多少怎么算
根号6等于多少怎么算2020-10-23 11:53:33文/张孟影 √6等于2.4494897427832,小编为大家整理了计算根号6的方法,请接着往下看吧. 根号6等于多少 √6=2.449489 ...
- 根号5用计算机怎么算,根号5等于多少怎么算
根号5约等于2.236.第一个方法是用计算器算,根号5是无限不循环小数.第二个方法是用笔算,先确定根号5的个位数是2,再依次用平方的方法计算出十分位.百分位.千分位数值. 根号5计算方法 首先考虑近似 ...
- [物理学与PDEs]第2章习题13 将 $p$ - 方程组化为守恒律形式的一阶拟线性对称双曲组...
试引进新的未知函数, 将 $p$ - 方程组 $$\beex \bea \cfrac{\p \tau}{\p t}-\cfrac{\p u}{\p x}&=0,\\ \cfrac{\p u}{ ...
- php如何实现读取网易有道词典输出单词的xml格式并且转化为html形式
php实现读取网易有道词典输出单词的xml格式并且转化为html形式 一.总结 一句话总结:将xml中的文件用preg_match_all读出来,然后组合成想要的数据 1.explode除了爆炸的意思 ...
- 数字标签转化为one-hot形式的tensor
刚刚入tensorflow的大坑,根据自己的理解今天来记录一下如何将数字标签转化为one-hot形式.有错误的请谅解哈哈哈 what is form of one-hot ?即用包含0和1的tenso ...
- 如何证明根号3是无理数?------顺便说下希帕索斯和第一次数学危机
我们都知道, 根号2是无理数, 初中数学课本给过一个非常优美的反证法. 当年,希帕索斯发现了这个秘密,引发了第一次数学危机.毕达哥拉斯解决不了这次数学危机,就想办法解决了提出问题的人.斯帕索斯死得好惨 ...
- 计算机还是数学竞赛内容吗,除了AMC,数学牛娃还能参加什么高含金量的数学竞赛...
AMC是美国数学国家级.甚至是世界级的"选秀节目",无论是从参赛人数.参赛国家.年龄跨度,AMC和其他数学竞赛相比都处于霸主地位. AMC不同于其他的数学比赛,它的体系环环相扣,颇 ...
最新文章
- 虚拟机 硬盘容量不够 增大的方法
- mybatis 操作动态表+动态字段+存储过程
- C语言易错题集 第三部
- 子窗体与父窗体之间相互调用其方法的实现
- 「递归」第7集 | 腾讯开源联盟出征!
- 一篇文章来告诉你可视化是多么重要
- docker 容器监控_以简便的方式监控Docker容器中的ADF应用程序
- Centos7通过yum安装jdk8
- JSP中调用java类中的方法
- java 环境win7_java 环境变量 win7
- 园区IP地址规划(非常详细)
- ubuntu桌面状态栏不见
- 专家,除了呼吁涨价你还会干点什么?
- 用java实现猜数字游戏程序:基础、偏移、三次机会、是否继续玩
- wandb报错:Exception: The wandb backend process has shutdown
- gmsl摄像头Android平台调试思路
- 如何使用码匠连接 CouchDB
- PMP在线完成续证和缴费步骤
- 颜色的三要素:色调,饱和度,和亮度。
- 笔记本电脑相关术语详解