math - Go 数学包的结果无效

标签 math go

我刚刚在我的电脑上运行了这段代码:

package main

import (
   "fmt"
   "math"
)

func main() {
   const ali = 4e20
   fmt.Println(math.Sin(ali))
}

得到了这个结果:

1.3471173831553043e+258

为什么 Sin 结果大于 1?

Python 和其他一些语言有正确的结果

最佳答案

这似乎只是实现的问题,如果输入超过 2**49 就会导致问题。发现一个真的老问题here

关于math - Go 数学包的结果无效,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45402834/

相关文章:

go - 如何将数据库中的点坐标转换为GoLang中的点结构

go - 如何获取 Go 中 map 中的条目数量?

mysql安全读-更新-写

c++ - 寻找质数的有效方法

Java - 用于物理计算的哪种数据类型?

math - 计算旋转以将对象与 3D 空间中的两点对齐

go - 从 golang 的 exec.Command 调用 ghostscrip 时出错

math - 如何计算数学函数的曲线长度?

java - 如何实现 FPS 相机?

go - 如何编译不符合 `go get`模式的go代码