首页 > ruby 数值取整问题

ruby 数值取整问题

我想对一个数值做以下类似的取整,如:

4001 取整到 10000
5010 取整到 10000
100001 取整到 20000

依次类推,请问有什么好的方法吗?

补充:我想将一个不是很规则的值取一个比它大的规则值。


ruby    def ten_thouusand_ceil(n)
        (n.fdiv 10000).ceil * 10000
    end

2.1.5 :015 > ten_thouusand_ceil 4001 => 10000
2.1.5 :016 > ten_thouusand_ceil 5010 => 10000
2.1.5 :017 > ten_thouusand_ceil 10001 => 20000


可以这样

def get_num(n)
  while j ||= 0
    return 10**j if n <= 10**j
    j = j + 1
  end
end
【热门文章】
【热门文章】