📜  红宝石 |数值余数()函数(1)

📅  最后修改于: 2023-12-03 15:11:35.756000             🧑  作者: Mango

红宝石 | 数值余数()函数

Ruby 中,数值类型有一个非常实用的函数叫做 数值余数()(英文名为 modulo),用于取两个数的余数。在其他编程语言中,也有类似的函数,比如 Python 中的 % 操作符。

语法
数值1.数值余数(数值2)

其中,数值1数值2 可以为任意数值类型,如 整数(int)或 浮点数(float)。

使用示例
puts 5.数值余数(2)  # 输出: 1
puts 10.5.数值余数(3)  # 输出: 1.5

puts 5.数值余数(-2)  # 输出: 1
puts -5.数值余数(2)  # 输出: -1
puts -5.数值余数(-2)  # 输出: -1
说明
  • 第一个示例中,5.数值余数(2) 返回值为 1,因为 5 这个数可以分成 2 个完整的 2,还剩下 1
  • 第二个示例中,10.5 可以分成 3 个完整的 3,还有 1.5 无法分完;
  • 第三个示例中,5.数值余数(-2) 返回值为 1,因为如果用 -25 除尽,还剩下 1
  • 第四个示例中,-5.数值余数(2) 返回值为 -1,因为如果用 2-5 除尽,还剩下 -1
  • 第五个示例中,-5.数值余数(-2) 和第四个示例文本相同。
应用场景

数值余数() 的一个典型应用场景是判断一个数是奇数还是偶数。在 Ruby 中,可以用 数值余数(2) 判断一个数是否可以被 2 整除:

def 判断奇偶性(数字)
  数字.数值余数(2) == 0 ? '这是一个偶数' : '这是一个奇数'
end

puts 判断奇偶性(2)  # 输出: "这是一个偶数"
puts 判断奇偶性(3)  # 输出: "这是一个奇数"

简单来说,奇数通过 数值余数(2) 运算返回 1,偶数则返回 0

总结

以上是关于 Ruby 中 数值余数() 函数的介绍,该函数可以非常便捷地取得两个数的余数,以及判断奇偶性等应用。