go语言实现sqrt的方法
更新时间:2015年03月02日 15:06:20 作者:dingding
这篇文章主要介绍了go语言实现sqrt的方法,实例分析了Go语言实现计算平方根的技巧,需要的朋友可以参考下
本文实例讲述了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 - (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
}
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
}
希望本文所述对大家的Go语言程序设计有所帮助。
相关文章
golang中为什么Response.Body需要被关闭详解
这篇文章主要给大家介绍了关于golang中为什么Response.Body需要被关闭的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧2018-08-08goland2020.2.x永久激活码破解详细教程亲测可用(Windows Linux Mac)
这篇文章主要介绍了goland2020.2.x永久激活码破解详细教程亲测可用(Windows Linux Mac) ,对goland激活码注册码相关知识感兴趣的朋友跟随小编一起看看吧2020-11-11
最新评论