求除法运算剩下的余数
**取模是求一个数除以另一个数后剩下的余数。**输入被除数和除数,此计算器会返回余数 — 与长除法 得到的结果相同,只是单独列出。
公式
其中 是被除数, 是除数 — 余数是减去仍能容纳于 中的最大整数倍 后所剩下 的部分。
示例演算
17 mod 5:
- 余 — 因为 ,且 。
需要考虑的关键因素
- 不同编程语言和数学惯例处理负数的方式不同。 本计算器采用大多数编程语言(JavaScript、C、Java)常见的”余数符号跟随被除数”惯例——但 Python 的
%运算符以及一些数学教科书采用的惯例是结果始终跟随除数的符号,对于相同的负数输入可能会给出看起来不同的答案。 - a mod n 的结果总是介于 0 和 n-1 之间(采用非负惯例),这正是取模被用于”环绕”行为的原因。 这种有界范围的特性,使取模成为处理任何周期性问题的天然工具——时钟运算、星期几、数组索引的循环,以及各种重复模式,都依赖于同样的有界环绕行为。
- 判断一个数是奇数还是偶数,其实就是对 2 取模。 任何数对 2 取模的结果不是 0(偶数)就是 1(奇数)——这是日常编程中取模最简单、最常见的实际用途之一。
- 取模是密码学中的一项基础运算,尤其是与大质数结合使用时。 模运算(在固定模数下处理余数)是 RSA 等广泛使用的加密方案的基础——本计算器计算的这一基本余数概念,在真实的密码学应用中会扩展到数百位长的数字。
常见错误
- 认为取模的结果总是非负数。 本计算器采用”余数符号跟随被除数”的惯例,这意味着负的被除数会产生负数(或零)余数——在比较不同工具的结果之前,请先确认您实际需要哪种惯例。
- 把取模和普通除法混淆。 取模只返回剩下的余数,而不是商——17 除以 5 等于 3.4,但 17 mod 5 等于 2,是一个用途完全不同的数字。
- 忘记模数为 0 时是未定义的。 除以零没有答案,a mod 0 同样没有答案——任何计算器或程序都应该将此视为错误,而不是悄悄返回 0 或被除数本身。
- 混淆哪个数是被除数、哪个是除数。 除特殊情况外,a mod n 与 n mod a 并不相同——交换两者的顺序会使结果完全改变,而不仅仅是符号发生变化。
需要了解的信息
- 需要逐步查看完整的商和余数,而不仅仅是余数吗?长除法计算器 会展示完整的长除法过程。
- 想处理两个数的公因数或公倍数,而不是余数吗?最大公因数与最小公倍数计算器 可以求出最大公约数和最小公倍数。
- 想知道某个数本身是否为质数,或它是如何分解成因数的吗?质因数分解计算器 会展示完整的质因数分解。