问题描述
我想对一个数值做以下类似的取整,如:
4001 取整到 100005010 取整到 10000100001 取整到 20000
依次类推,请问有什么好的方法吗?
补充:我想将一个不是很规则的值取一个比它大的规则值。
问题解答
回答1:ruby def ten_thouusand_ceil(n)(n.fp 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
回答2:可以这样
def get_num(n) while j ||= 0 return 10**j if n <= 10**j j = j + 1 endend