如何开方,如何快速开平方根( 四 )



于是 , 我就设计了一个版式 。 下面就开始使用这个版式来检验开立方笔算法 。

例如:147^3=3176523

一开始 , 如下图所示 , 将3176523从个位开始3位3位分开 。 (3'176'523)

第一步 , 我们知道 , 1^3 < 3 < 2^3 , 所以 , 第一位应该填1 。

1^3 = 1 , 3 - 1 = 2 , 余2 , 再拖三位 , 一共是2176 。

接下来这一步就比较复杂了 。 因为我水平有限 , 我现在还不能把它改造得比较好 。

依照“b[300a^2+b(30a+b)]” , 所以:

1^2*300=300 , 1*30=30 , 如图上所写 。

第二位就填4 , 所以上图3个空位都填4 。

然后(34*4+300)*4=1744 , 2176-1744=432 , 再拖三位得432523 。

然后就照上面一样 , 

14^2*300=58800 , 14*30=420 , 如上图所写 。

第三位就填7 , 所以上图下边3个空位都填7 。

然后(427*7+58800)*7=432523,432523-432523=0 , 到此开立方结束 。

在我以后的一些实践中 , 发现越往后开 , 300*a^2与b(30a+b)的差距就越大 , 寻找b的工作就越容易 , 因为结果中有一项是300*a^2*b 。

徒手开n次方根的方法:
原理:设被开方数为X,开n次方,设前一步的根的结果为a,现在要试根的下一位,设为b,
则有:(10*a+b)^n-(10*a)^n<=c(前一步的差与本段合成);且b取最大值
用纯文字描述比较困难,下面用实例说明:
我们求 2301781.9823406 的5次方根:
第1步:将被开方的数以小数点为中心,向两边每隔n位分段(下面用'表示);不足部分在两端用0补齐;
23'01781.98234'06000'00000'00000'..........
从高位段向低位段逐段做如下工作:
初值a=0,差c=23(最高段)
第2步:找b,条件:(10*a+b)^n-(10*a)^n<=c,即b^5<=23,且为最大值;显然b=1
差c=23-b^5=22,与下一段合成,
c=c*10^n+下一段=22*10^5+01781=2201781
第3步:a=1(计算机语言赋值语句写作a=10*a+b),找下一个b,
条件:(10*a+b)^n-(10*a)^n<=c,即:(10+b)^5-10^5<=2201781,
b取最大值8,差c=412213,与下一段合成,
c=c*10^5+下一段=412213*10^5+98234=41221398234
第4步:a=18,找下一个b,
条件:(10*a+b)^n-(10*a)^n<=c,即:(180+b)^5-180^5<=41221398234,
b取最大值7
说明:这里可使用近似公式估算b的值:
当10*a>>b时,(10*a+b)^n-(10*a)^n≈n*(10*a)^(n-1)*b,即:
b≈41221398234/n/(10*a)^(n-1)=41221398234/5/180^4≈7.85,取b=7
以下各步都更加可以使用此近似公式估算b之值
差c=1508808527;与下一段合成,
c=c*10^5+下一段=1508808527*10^5+06000=150880852706000
第5步:a=187,找下一个b,
条件:(10*a+b)^n-(10*a)^n<=c,即:
(1870+b)^5-1870^5<=150880852706000,
b取最大值2,差c=28335908584368;与下一段合成,
c=c*10^5+下一段=2833590858436800000
第6步:a=1872,找下一个b,
条件:(10*a+b)^n-(10*a)^n<=c,即:
(18720+b)^5-18720^5<=2833590858436800000,
b取最大值4,差c=376399557145381376;与下一段合成,
c=c*10^5+下一段=37639955714538137600000
.............................
最后结果为:18.724......

以上是转贴一网站的内容,我自己前半部分有些明白,后半部分还不明白,但我可以确定以上的解答过程才是正确的,而绝不是一个数的3倍.

述求平方根的方法 , 称为笔算开平方法 , 用这个方法可以求出任何正数的算术平方根 , 它的计算步骤如下:

1.将被开方数的整数部分从个位起向左每隔两位划为一段 , 用撇号分开(竖式中的11'56) , 分成几段 , 表示所求平方根是几位数;

推荐阅读