本文實(shí)例講述了go語言實(shí)現(xiàn)sqrt的方法。分享給大家供大家參考。具體實(shí)現(xiàn)方法如下:
復(fù)制代碼 代碼如下:
package mymath
import "math"
func InvSqrt(x float32) float32 {
var xhalf float32 = 0.5*x // get bits for floating VALUE
i := math.Float32bits(x) // gives initial guess y0
i = 0x5f375a86 - (i>>1) // convert bits BACK to float
x = math.Float32frombits(i) // Newton step, repeating increases accuracy
x = x*(1.5-xhalf*x*x)
x = x*(1.5-xhalf*x*x)
x = x*(1.5-xhalf*x*x)
return 1/x
}
希望本文所述對(duì)大家的Go語言程序設(shè)計(jì)有所幫助。
您可能感興趣的文章:- Go語言MD5加密用法實(shí)例
- go語言base64加密解密的方法
- go語言實(shí)現(xiàn)AES加密的方法
- Go語言實(shí)現(xiàn)AzDG可逆加密算法實(shí)例
- Go語言生成素?cái)?shù)的方法
- go語言中range用法
- go語言實(shí)現(xiàn)文件分割的方法
- Go語言對(duì)字符串進(jìn)行MD5加密的方法