【发布时间】:2017-03-24 00:57:56
【问题描述】:
有没有办法在 Julia 中将浮点数转换为 int?我正在尝试将浮点数转换为固定精度数,小数部分表示为 8 位整数。为了做到这一点,我只需要截断数字的小数部分,我认为最好的方法是从浮点 x 中减去转换后的 x 整数:
x = 1.23455
y = x - Int(x)
println(y)
y = 0.23455
【问题讨论】:
-
您提供的代码不起作用,因为
Int(x)将返回Inexact error,除非x是表示为Float64的整数,例如1.0或-44.0。另外,根据这个问题,我无法判断您实际上在追求什么。您的措辞听起来像是您想要Float64的小数部分,表示为Int8。这是正确的吗?这是一个奇怪的要求,特别是考虑到您的示例编号1.23455,Int64的小数部分是23455,但这显然 太多 太大而无法表示为 @987654334 @. -
另外,您似乎可以使用舍入函数。所有这些函数都接受目标类型进行转换:docs.julialang.org/en/release-0.5/manual/…
标签: floating-point int julia