【发布时间】:2018-09-21 08:49:25
【问题描述】:
只是做一些基本的模运算,并试图用问号来围绕下面的运算。
0%5 // 0 - Totally understand
1%5 // 1 ?
2%5 // 2 ?
3%5 // 3 ?
4%5 // 4 ?
5%5 // 0 - Totally understand
也许我想错了。例如 1/5 将返回 0.2 的 Double 而不是单个 integer 那么它如何返回 1 的余数?
我明白这些。这是有道理的,但以上我无法理解。
9%4 // 1
10%2 // 0
10%6 // 4
如果有人能解释这一点,那就太好了。看来我脑子放屁了。 Source of learning。
【问题讨论】:
-
模块有什么问题。
1 = 5 * 0 + 1。实际上 1/5 将返回 0,而不是 0.2。因为1和5是Int类型 -
请注意,
%是 余数运算符, 不是 模数。 比较 Negative number modulo in swift。 -
1%5 不能容纳完整的 5,所以余数是 1。因此 2 % 5 不能满足完整的 5,余数是 2。