Explanation of 1 mod 3

9

最近我一直在研究取模运算。我正在尝试提高自己的数学技能,如果说实话,我的数学水平并不是很好,但我正在努力改善。我认为我理解了这个概念。而且我也非常擅长长除法。然而,有一些问题一直困扰着我,我在网上找不到答案。

我知道7 % 5 = 2(5可以被整除1次,余数为2)。

但我不明白的是:

1 % 3 = 1

这怎么可能呢?3不能被1整除,商为0,余数为3啊?难道1 % 3 的结果不应该是3吗?

请问有人能以最简单易懂的方式解释一下吗?

如果被除数(1)小于除数(3),我们知道余数肯定是1,那么这种情况下它就直接把被除数作为结果了,我的理解对吗?

谢谢你的帮助。


答案永远不可能是3,因为余数总是小于除数的。只需在脑海中运行它:你有一个数字,你从中取出三个零次,你还剩下一个。 - Sami Kuhmonen
是的,这正是我的问题。当被除数小于除数时,结果仍将是被除数。例如2%3=2。 - Jay
是的。所以1 % 3 = 1完全一样。 - Sami Kuhmonen
三除以一,余数为零;不是余数为三。 - user3344003
我投票关闭此问题,因为它与编程或软件开发无关,而是涉及[math.se]。 - Pang
我投票关闭此问题,因为它是一个数学问题,而不是一个编程问题。 - njuffa
2个回答

16

1%3中的余数是指在用3去除1时,剩下的是1而不是3。正如你所说,3不能被1整除。因此,从1中去掉03的倍数后,1全部保留下来。因此,1 % 3 = 1


12

模运算 n % m 的结果就是一个数字 r,满足q * m + r = n(其中 q 可以是任意数字)。唯一的要求是0 <= r < m

例如:

7 % 5 --> 1 * 5 + 2 == 7 --> r = 2
1 % 3 --> 0 * 3 + 1 == 1 --> r = 1

抱歉,正如我所说,我的数学不是很好,我并不完全理解。我的想法显然是错误的,但在我的脑海中,我正在做1/3,如果我将其写成长除法,我会得到0 r 3,因为模运算得到余数,我仍然不完全理解答案为什么不是3。 - Jay

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接