勵志

勵志人生知識庫

平方根速算法

平方根的速算法有多種,這裡列舉幾種常用的方法:

基礎算法。將被開方數的整數部分從個位起向左每隔兩位劃為一段,用撇號分開,分成幾段即表示所求平方根是幾位數。根據左邊第一段里的數求得平方根的最高位上的數,從第一段的數減去最高位上數的平方,在差的右邊寫上第二段數組成第一個餘數。把求得的最高位數乘以2去試除第一個餘數,所得的最大整數作為試商。用商的最高位數的2倍加上這個試商再乘以試商,如果所得的積小於或等於餘數,試商就是平方根的第二位數。如果所得的積大於餘數,就把試商減小再試。

牛頓-拉夫遜方法。這是一種疊代方法,通過不斷逼近平方根的近似值,直到滿足一定的精度要求。具體步驟如下:猜測一個近似值x0,通過牛頓-拉夫遜公式計算出新的近似值x1=1/2*(x0+a/x0),如果x1與x0之間的差的絕對值小於一定的精度要求,則x1為平方根的近似值,否則重複執行步驟2。

連分數法。這種方法通過不斷疊代連分數的計算,逐步逼近平方根的近似值。具體步驟如下:定義一個連分數,例如sqrt(a)=[1; a, 2, a, 3, a, ...],其中分母a表示要進行開方運算的數。