我只是在试验Julia并发现它在运行时给出的值不正确:
输入:
println(1000^6)
println(1000^7)
println(1000^8)
println(1000^9)
Run Code Online (Sandbox Code Playgroud)
输出:
1000000000000000000
3875820019684212736
2003764205206896640
-6930898827444486144
Run Code Online (Sandbox Code Playgroud)
这是一个问题,还是我做错了?
如上所述,问题是由于整数溢出.由于可以获得Int64中可以存储的最大值
julia> typemax(Int64)
9223372036854775807
Run Code Online (Sandbox Code Playgroud)
但是,1000^9更大,你可以看到:
julia> BigInt(1000)^9
1000000000000000000000000000
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
651 次 |
| 最近记录: |