Heim  >  Fragen und Antworten  >  Hauptteil

ruby 数值取整问题

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

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

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

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

怪我咯怪我咯2759 Tage vor806

Antworte allen(2)Ich werde antworten

  • 伊谢尔伦

    伊谢尔伦2017-04-24 09:11:25

    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

    Antwort
    0
  • 迷茫

    迷茫2017-04-24 09:11:25

    可以这样

    def get_num(n)
      while j ||= 0
        return 10**j if n <= 10**j
        j = j + 1
      end
    end
    

    Antwort
    0
  • StornierenAntwort