余数

在算术中,当两个整数相除的结果不能以整数商表示时,余数便是其“餘留下的量”。当余数为零时,被称为整除。

自然数的余数
如果 a 和 d 是两个自然数,d 非0,可以证明存在两个唯一的整数 q 和 r ,满足 a = qd+r 且 0 \leq r 。其中, q* 被称为商數, r 被称为余数。带余除法是一个关于如何计算余数的算法,其中提供了对此结果的证明。

例子

  • 13除以10,商为1,余数为3,13 = 1 * 10 + 3或13 \div 10 = 1 \dots 3。
  • 26除以4,商为6,余数为2,26 = 6 * 4 + 2或26 \div 4 = 6 \dots 2。
  • 56除以7,商为8,余数为0,56 = 8 * 7 + 0或56 \div 7 = 8 \dots 0。
  • 9除以10,商为0,余数为9,9 = 0 * 10 + 9或9 \div 10 = 0 \dots 9。

一般整数的余数
如果 ad 是整数,d 非零,那么余数 r 满足这样的关系:

:a = qd+r , q 为整数,且0\leq \left \vert r \right \vert 。

当这样定义时,可能导致两种可能的余数。例如,除法式子\frac{-42}{-5}的可以表达为

:-42=9\times (-5)+3(在数学工作者中使用较多)

:-42=8\times (-5)+(-2).

即余数可能是3或−2。

这种对余数不明确的定义可能导致严重的计算问题,对于處理关键任务的系统,错误的选择会导致严重的后果。在一些組合語言系統中,會有特殊的除法指令,設定余数和被除數同號。

在上面的例子,负余数为正余数减5得来,5即是除数 d 。通常,当除以 d 时,如果正余数为r_1,负余数为r_2,那么

:r_2=r_1+d。

Python 2.7语言定义的除法中,不能整除的情况下,余数与除数同号,例如\frac{-42}{-5}表达为

:-42=8\times (-5)+(-2)

而 \frac{42}{-5} 则表达为

:42=(-9)\times (-5)+(-3)

实数的余数
a 和 d 是实数,且 d 非零,a 除以 d 会得到另一个实数(商),没有所谓的剩余的数.但如果要求商为一个整数,则余数的概念还是有必要的。可以证明:存在唯一的整数商 q 和唯一的实数r 使得:a = qd+r, 0\leq r 。在整数除法裡,余数可以要求为负,即满足关系:-\left \vert d \right \vert 。

如上在实数范围内扩展余数的定义在数学理论中并不重要;尽管如此,很多程序语言都实现了这个定义—参同餘。

参见
*整除
*中国剩余定理
*同余
*輾轉相除法

评论 (0)

  • 还没有评论,来抢沙发吧。