站长资源脚本专栏

go语言实现sqrt的方法

整理:jimmy2024/12/22浏览2
简介本文实例讲述了go语言实现sqrt的方法。分享给大家供大家参考。具体实现方法如下:复制代码 代码如下:package mymathimport "math"func InvSqrt(x float32) float32 { var xhalf float32 = 0.5*x // ge

本文实例讲述了go语言实现sqrt的方法。分享给大家供大家参考。具体实现方法如下:

复制代码 代码如下: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 - (i1) // 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
}

希望本文所述对大家的Go语言程序设计有所帮助。