gpt4 book ai didi

ruby - 如何在 Ruby 中将数字四舍五入到最接近的 9

转载 作者:太空宇宙 更新时间:2023-11-03 18:12:38 25 4
gpt4 key购买 nike

在 Ruby 中如何将数字四舍五入到最接近的 9?

我想要的效果是,如果一个数字是 22.22,它将向下舍入为 19。如果一个数字是 26.34,它将四舍五入为 29

有什么想法吗?

谢谢

最佳答案

不幸的是,float 的 round() 方法除了最接近的整数之外没有太多的语法糖来舍入到其他整数。可以建立自己的方法—

此方法假设所有数字都是正数。为了可读性,我建议您将这个复杂的数值计算包装到一个方法中,该方法的名称指的是它在做什么。

def round_to_nearest_9(num)
((num + 1) / 10).round * 10 - 1
end

如果您不想假设输入的数字是正数:

def round_to_nearest_9(num)
if num < 0
return ((num - 1) / 10).round * 10 + 1
else
return ((num + 1) / 10).round * 10 - 1
end
end

关于ruby - 如何在 Ruby 中将数字四舍五入到最接近的 9,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31419506/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com