%符号在Ruby中意味着什么?例如,我使用以下代码:
puts "Roosters #{100 - 25 * 3 % 4}"
获得以下输出:
97
97的平分是从哪里来的?我已经查找了模运算符是什么,并且仍然不知道它在这个简单的数学例子中做了什么。
答案 0 :(得分:1)
模数运算符。
它进行除法并返回余数。所以,在你的情况下,75/4是18,余数是3。
25 * 3 = 75
75%4 = 3(余数)
100 - 3 = 97
答案 1 :(得分:1)
modulo - 除以余数
除以整数除法中的余数。
10 / 3 = 3 (with remainder 1 that we discard with integer division)
10 % 3 = 1 (the part we normally discard is the part we are interested in with mod)
它也用于创建周期。如果我们有一个1到N的序列,我们可以用M来修改它并产生一个循环。再假设M = 3
for n in 0..10
m = n % 3
puts "#{n} mod 3 = #{m}"
end
0 mod 3 = 0
1 mod 3 = 1
2 mod 3 = 2
3 mod 3 = 0
4 mod 3 = 1
5 mod 3 = 2
6 mod 3 = 0
7 mod 3 = 1
8 mod 3 = 2
9 mod 3 = 0
10 mod 3 = 1