|
開平方 ' ~2 q1 E0 C( f) l1 K
例:(以20為例)
9 w' p; w) k9 L: O16=4*4
/ g4 X! u6 [$ g0 Y9 f設(shè)20=(4+x)^2
1 W8 p+ l, v$ g20=16+8x+x^2
) [0 |3 l4 b# K% \* ]/ B: R2 d因為x較小 3 ^9 s Z E& F7 ^
所以 ( ~0 O% z( G! b) X1 f( `* p
20約等于16+8x 1 x4 D% \& x! K7 A* l* J
x約等于0.5
: C! Z. E$ H0 M# [* ` ~/ f7 M: s. M設(shè)20=(4.5+x)^2
8 z& J0 m# O% [/ A( x5 o同理 5 m3 K: e# r' } F/ I; n
x約等于-0.0277 O! o6 x; u, \, f( w5 u( K7 }
............... ' Y, j7 a4 G7 t2 E( @# F* |
徒手開n次方根的方法: $ E2 R2 J8 h8 h" n( e. c, A6 y
原理:設(shè)被開方數(shù)為X,開n次方,設(shè)前一步的根的結(jié)果為a,現(xiàn)在要試根的下一位,設(shè)為b,
. {( Q9 D+ f2 O; u( o7 n則有 10*a+b)^n-(10*a)^n<=c(前一步的差與本段合成);且b取最大值 7 _( ]8 |1 E& m( Y: z6 P) \. M2 k
用純文字描述比較困難,下面用實例說明: 6 z2 d2 h2 E( X, v$ n% k3 b
我們求 2301781.9823406 的5次方根:
: }4 f: a1 ?- t" j- L j8 ?/ \第1步:將被開方的數(shù)以小數(shù)點為中心,向兩邊每隔n位分段(下面用'表示);不足部分在兩端用0補齊; ' j- k$ o" w# l7 _
23'01781.98234'06000'00000'00000'..........
" D2 F5 b+ l$ ~- B* ^) I從高位段向低位段逐段做如下工作: 3 m# p( b- l8 G- m9 U5 ]
初值a=0,差c=23(最高段) 2 O7 j5 |7 T! {/ E1 C2 x' y
第2步:找b,條件 10*a+b)^n-(10*a)^n<=c,即b^5<=23,且為最大值;顯然b=1
& _2 \9 U# Y' \; A, S差c=23-b^5=22,與下一段合成,
" X" E& z0 `4 j1 V4 W, @c=c*10^n+下一段=22*10^5+01781=2201781
" `5 j7 j# k. h# `1 G+ N5 w第3步:a=1(計算機語言賦值語句寫作a=10*a+b),找下一個b, ; V( t0 ^% o a1 n
條件 10*a+b)^n-(10*a)^n<=c,即:(10+b)^5-10^5<=2201781, ; Y3 a) o) r; H& P: e
b取最大值8,差c=412213,與下一段合成, * }2 I+ g+ f5 I, O$ `
c=c*10^5+下一段=412213*10^5+98234=41221398234 " v5 c6 w' ]+ d$ ]
第4步:a=18,找下一個b, * a7 U6 ^* c. u! ?" j Q+ ~+ e
條件:(10*a+b)^n-(10*a)^n<=c,即:(180+b)^5-180^5<=41221398234,
' O. m9 T: F% ^8 k! Db取最大值7 : z$ r; k8 i5 c3 b& i- V1 w+ M5 ]- Y
說明:這里可使用近似公式估算b的值: * w' y. E' _+ T8 T( s8 j
當(dāng)10*a>>b時,(10*a+b)^n-(10*a)^n≈n*(10*a)^(n-1)*b,即:
8 P& n% k7 P" {b≈41221398234/n/(10*a)^(n-1)=41221398234/5/180^4≈7.85,取b=7
: P9 w5 J4 w; }) S( I以下各步都更加可以使用此近似公式估算b之值 0 W: h6 n3 Z& n; T3 \( A
差c=1508808527;與下一段合成, 8 {" Q- i: Q7 |4 h! _% @1 G
c=c*10^5+下一段=1508808527*10^5+06000=150880852706000
+ T4 u; D' t) J5 p3 M. m第5步:a=187,找下一個b, 4 s1 t' M* |% F6 t9 P5 v5 T2 F
條件:(10*a+b)^n-(10*a)^n<=c,即: 7 r- ?- x- x& k- Y
(1870+b)^5-1870^5<=150880852706000, $ N4 @3 e5 j! F; {' _7 S. W
b取最大值2,差c=28335908584368;與下一段合成,
8 H$ t- ?4 Z1 R1 n( X8 N8 q+ ic=c*10^5+下一段=2833590858436800000 ' Q A; [( w& r- ~! l
第6步:a=1872,找下一個b, # G9 x1 s. ^+ C$ b2 M7 H) z
條件:(10*a+b)^n-(10*a)^n<=c,即:
( N6 q. \9 r' E(18720+b)^5-18720^5<=2833590858436800000,
& E: _, ?1 F, X% c8 X: P- kb取最大值4,差c=376399557145381376;與下一段合成, " q" q( X+ X) q5 {4 S0 v6 q
c=c*10^5+下一段=37639955714538137600000 |
|