加入收藏 | 设为首页 | 会员中心 | 我要投稿 温州站长网 (https://www.0577zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 教程 > 正文

go语言实现sqrt的方法

发布时间:2016-12-04 11:54:42 所属栏目:教程 来源:站长网
导读:本文实例讲述了go语言实现sqrt的方法。分享给大家供大家参考。具体实现方法如下: 复制代码 代码如下:package mymath import "math" func InvSqrt(x float32) float32 { nbsp;nbsp;nbsp; var xhalf float32 = 0.5*x // get bits for floating VALUE nbsp;n

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

复制代码 代码如下:package mymath
import "math"
func InvSqrt(x float32) float32 {
nbsp;nbsp;nbsp; var xhalf float32 = 0.5*x // get bits for floating VALUE
nbsp;nbsp;nbsp; i := math.Float32bits(x) // gives initial guess y0
nbsp;nbsp;nbsp; i = 0x5f375a86 - (igt;gt;1) // convert bits BACK to float
nbsp;nbsp;nbsp; x = math.Float32frombits(i) // Newton step, repeating increases accuracy
nbsp;nbsp;nbsp; x = x*(1.5-xhalf*x*x)
nbsp;nbsp;nbsp; x = x*(1.5-xhalf*x*x)
nbsp;nbsp;nbsp; x = x*(1.5-xhalf*x*x)
nbsp;return 1/x
}

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

(编辑:温州站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读