不用计算机开平方的原理是什么,不用计算器,怎样开平方和立方?

匿名用户

1级

2008-01-10 回答

徒手开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......

开平方

例:(以20为例)

16=4*4

设20=(4+x)^2

20=16+8x+x^2

因为x较小

所以

20约等于16+8x

x约等于0.5

设20=(4.5+x)^2

同理

x约等于-0.0277

...............

徒手开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


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部