朱莉娅:ceil/floor可以返回一个整数吗?

为什么不ceil()floor()返回一个整数?我怎样才能返回一个整数?

a = 10
b = 3
typeof(a/b)
  ## Float64

c = ceil(a/b)
typeof(c)
  ## Float64

在计算范围的背景下,这个问题困扰着我,例如

k = 0:1:c
  ## 0.0:1.0:4.0
typeof(k)
  ## StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}}

完全披露:我想我有一个答案,所以我将回答我自己的问题,但是如果您有更好的答案,请发布答案。希望下次有人查看时,他们会在这里轻松找到答案。

回答

有时您想要ceil()floor()返回整数以外的其他内容,例如Inf, NaN。但是,您可以像这样返回一个整数:

julia> c = ceil(Int64, a/b)
julia> typeof(c)
Int64 

julia> k = 0:1:c
0:1:4

julia> typeof(k)
StepRange{Int64, Int64}

查看文档


以上是朱莉娅:ceil/floor可以返回一个整数吗?的全部内容。
THE END
分享
二维码
< <上一篇
下一篇>>