types - Julia : ceil/floor 可以返回一个整数吗?

标签 types julia floor ceil

为什么不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}
docs

关于types - Julia : ceil/floor 可以返回一个整数吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67068113/

相关文章:

c 可以按照 modula-2 定义 `TNumber = [minValue,maxValue]` 的方式定义数据类型吗?

python - 在 Python 中加载 JLD 文件

arrays - 两种不同类型的数组数组

c - (floor) 在 C 中如何工作?乘以 100 并调用 (floor) 时出现 var=4.2 的奇怪结果

java - (int) Math.sqrt(n) 比 (int) Math.floor(Math.sqrt(n)) 慢很多

python - Numpy 地板浮点值到 int

c++ - C++ 中的“使用类型”导致多个错误

string - 类型安全的 printf

dictionary - 如何在 Julia 中使用带有复杂字典键的 husky() 和 in() 函数?

c++ - 无法将 int *(*)[] 转换为 int(**)[]