述求平方根的方法

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

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

2.根据左边第一段里的数,求得平方根的最高位上的数(竖式中的3); 

3.从第一段的数减去最高位上数的平方,在它们的差的右边写上第二段数组成第一个余数(竖式中的256); 

4.把求得的最高位数乘以20去试除第一个余数,所得的最大整数作为试商(3×20除 256,所得的最大整数是 4,即试商是4); 

5.用商的最高位数的20倍加上这个试商再乘以试商.如果所得的积小于或等于余数,试商就是平方根的第二位数;如果所得的积大于余数,就把试商减小再试(竖式中(20×3+4)×4=256,说明试商4就是平方根的第二位数); 

6.用同样的方法,继续求平方根的其他各位上的数.

徒手开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...... 
参考资料:http://www.mydrs.org/dv7/dispbbs.asp?boardid=67&replyid=164414&id=5012&page=2&skin=0&Star=2

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值