1. 自然数の除法
2. 文科省が指定した除法
3. 正の剰余・負の剰余
4. 除数と同符号の剰余
5. 最小非負剰余
6. 被除数と同符号の剰余
7. 絶対値最小剰余
(定理) 非負の実数 a と正の実数 b に対して,a−r が b で割り切れるような 0≤r<b の範囲の実数 r が存在する。
(証明) 上のような r が存在すると仮定する。 \[ b\mid a-r,\quad 0\le r<b, \tag{1} \] a−r を b で割った商を q とすると,a−r=bq より r=a−bq であるから, \[ 0\le a-bq<b \] が成り立つ。 q について解くと \[ \frac{a}{b}-1<q\le \frac{a}{b} \] となるので,q は床関数を用いて \[ q=\left \lfloor \frac{a}{b}\right \rfloor \tag{2} \] と表せる。 逆に,この q に対して r=a−bq と定めると,0≤r<b で,a−r は b で割り切れる。 (証明終)
割られる数 a のことを被除数,割る数 b のことを除数といい,上で求めた q のことを商,r のことを剰余という。 表は幾つかの数を3で割った結果を示したものである。
被 A | 除 B | 商 Q | 余 R |
5 | 3 | 1 | 2 |
4 | 3 | 1 | 1 |
3 | 3 | 1 | 0 |
2 | 3 | 0 | 2 |
1 | 3 | 0 | 1 |
0 | 3 | 0 | 0 |
次のページへ
1. 自然数の除法
2. 文科省が指定した除法
3. 正の剰余・負の剰余
4. 除数と同符号の剰余
5. 最小非負剰余
6. 被除数と同符号の剰余
7. 絶対値最小剰余
文部科学省検定済教科書には,被除数が負の場合の除法について書かれている。 被除数 a が負の場合も正の場合と同様に,商を q=⌊a/b⌋,剰余を 0≤r<b とする。 除数 b が負の場合の除法については何も書かれていない。
被 A | 除 B | 商 Q | 余 R |
5 | 3 | 1 | 2 |
4 | 3 | 1 | 1 |
3 | 3 | 1 | 0 |
2 | 3 | 0 | 2 |
1 | 3 | 0 | 1 |
0 | 3 | 0 | 0 |
−1 | 3 | −1 | 2 |
−2 | 3 | −1 | 1 |
−3 | 3 | −1 | 0 |
−4 | 3 | −2 | 2 |
−5 | 3 | −2 | 1 |
多くのプログラミング言語において,これとは異なる商と剰余が定義されている。
aを整数,bを正の整数とし,aをbで割ったときの商をq,余りをrとすると,a=bq+r, 0≤r<b文部科学省検定済教科書 2 東書 数A 317 ISBN978-4-487-16529-2
整数aと正の整数bに対して,a=bq+r(0≤r<b)を満たす整数q,rをそれぞれ,aをbで割ったときの商,余りという。文部科学省検定済教科書 61 啓林館 数A 325 ISBN978-4-402-07543-9
次のページへ
1. 自然数の除法
2. 文科省が指定した除法
3. 正の剰余・負の剰余
4. 除数と同符号の剰余
5. 最小非負剰余
6. 被除数と同符号の剰余
7. 絶対値最小剰余
(定理) 任意の被除数 a と正の除数 b に対して,0≤r<b の範囲の剰余 r が存在する。
(証明) 整数 q を \[ q=\left \lfloor \frac{a}{b}\right \rfloor \] とすると,q は \[ \frac{a}{b}-1<q\le \frac{a}{b} \] を満たす唯一つの整数である。 r=a−bq とすると, \[ 0\le r<b \] が成り立つ。 除数が b>0 のとき,商が q=⌊a/b⌋,剰余の範囲が 0≤r<b となる除法を定義できる。 (証明終)
(定理) 任意の被除数 a と正の除数 b に対して,−b<r≤0 の範囲の剰余 r が存在する。
(証明) 整数 q を \[ q=\left \lceil \frac{a}{b}\right \rceil \] とすると,q は \[ \frac{a}{b}\le q<\frac{a}{b}+1 \] を満たす唯一つの整数である。 r=a−bq とすると, \[ -b<r\le 0 \] が成り立つ。 除数が b>0 のとき,商が q=⌈a/b⌉,剰余の範囲が −b<r≤0 となる除法を定義できる。 (証明終)
(定理) 任意の被除数 a と負の除数 b に対して,0≤r<−b の範囲の剰余 r が存在する。
(証明) 整数 q を \[ q=\left \lceil \frac{a}{b}\right \rceil \] とすると,q は \[ \frac{a}{b}\le q<\frac{a}{b}+1 \] を満たす唯一つの整数である。 r=a−bq とすると, \[ 0\le r<-b \] が成り立つ。 除数が b<0 のとき,商が q=⌈a/b⌉,剰余の範囲が 0≤r<−b となる除法を定義できる。 (証明終)
(定理) 任意の被除数 a と負の除数 b に対して,b<r≤0 の範囲の剰余 r が存在する。
(証明) 整数 q を \[ q=\left \lfloor \frac{a}{b}\right \rfloor \] とすると,q は \[ \frac{a}{b}-1<q\le \frac{a}{b} \] を満たす唯一つの整数である。 r=a−bq とすると, \[ b<r\le 0 \] が成り立つ。 除数が b<0 のとき,商が q=⌊a/b⌋,剰余の範囲が b<r≤0 となる除法を定義できる。 (証明終)
次のページへ
1. 自然数の除法
2. 文科省が指定した除法
3. 正の剰余・負の剰余
4. 除数と同符号の剰余
5. 最小非負剰余
6. 被除数と同符号の剰余
7. 絶対値最小剰余
正の剰余・負の剰余の選択について特にきまりはなく,どちらを用いるかは任意である。 ここでは除数と剰余が同符号になるような除法を定める。 除数が正(b>0)の場合の剰余を非負(0≤r<b)となるように,除数が負(b<0)の場合の剰余を非正(b<r≤0)となるように,除法を定義することができる。 \begin{align*} b>0 &\implies q=\lfloor a\div b\rfloor,\;0\le r<b\\ b<0 &\implies q=\lfloor a\div b\rfloor,\;b<r\le 0 \end{align*} この型の除法では,剰余 r は除数 b と同符号(a=0 や r=0 も同符号とみなす)になり,商 q は a÷b の負の無限大への切り捨て(Round_Floor)になる。
|
|
一部のプログラミング言語でこの除法が既定になっている。
次のページへ
1. 自然数の除法
2. 文科省が指定した除法
3. 正の剰余・負の剰余
4. 除数と同符号の剰余
5. 最小非負剰余
6. 被除数と同符号の剰余
7. 絶対値最小剰余
除数が正(b>0)の場合の剰余を非負(0≤r<b)となるように,除数が負(b<0)の場合の剰余を非負(0≤r<−b)となるように,除法を定義することができる。 \begin{align*} b>0 &\implies q=\lfloor a\div b\rfloor,\;0\le r<b\\ b<0 &\implies q=\lceil a\div b\rceil,\;0\le r<-b \end{align*} この型の除法では,剰余 r が非負になる。その剰余のことを最小非負剰余という。
|
|
この除法を既定とするプログラミング言語はわずかである。
次のページへ
1. 自然数の除法
2. 文科省が指定した剰余
3. 正の剰余・負の剰余
4. 除数と同符号の剰余
5. 最小非負剰余
6. 被除数と同符号の剰余
7. 絶対値最小剰余
被除数が非負で除数が正(a≥0, b>0)の場合の剰余を非負(0≤r<b),被除数が非正で除数が正(a≤0, b>0)の場合の剰余を非正(−b<r≤0)となるように, 被除数が非負で除数が負(a≥0, b<0)の場合の剰余を非負(0≤r<−b),被除数が非正で除数が負(a≤0, b<0)の場合の剰余を非正(b<r≤0)となるように,除法を定義することができる。 \begin{align*} a\ge 0,\;b>0 &\implies q=\lfloor a\div b\rfloor,\;0\le r<b\\ a\le 0,\;b>0 &\implies q=\lceil a\div b\rceil,\;-b<r\le 0\\ a\ge 0,\;b<0 &\implies q=\lceil a\div b\rceil,\;0\le r<-b\\ a\le 0,\;b<0 &\implies q=\lfloor a\div b\rfloor,\;b<r\le 0 \end{align*} この型の除法では,剰余 r は被除数 a と同符号(a=0 や r=0 も同符号とみなす)になり,商 q は a÷b の0への切り捨て(Round_Down)になる。
|
|
多くのプログラミング言語でこの除法が既定になっている。
次のページへ
1. 自然数の除法
2. 文科省が指定した剰余
3. 除数と同符号の剰余
4. 常に非負の剰余
5. 最小非負剰余
6. 被除数と同符号の剰余
7. 絶対値最小剰余
正または負の除数 b に対して,−|b|/2≤r<|b|/2 または −|b|<r≤|b|/2 の範囲の剰余 r を定義することができ,その剰余のことを絶対値最小剰余という。
(定理) 任意の被除数 a と正の除数 b に対して,−b/2≤r<b/2 の範囲の剰余 r が存在する。
(証明) 整数 q を \[ q=\left \lfloor \frac{a}{b}+\frac{1}{2}\right \rfloor \] とすると,q は \[ \frac{a}{b}-\frac{1}{2}<q\le \frac{a}{b}+\frac{1}{2} \] を満たす唯一つの整数である。 r=a−bq とすると, \[ -\frac{b}{2}\le r<\frac{b}{2} \] が成り立つ。 除数が b>0 のとき,商が q=⌊a/b+0.5⌋,剰余の範囲が −b/2≤r<b/2 となる除法を定義できる。 (証明終)
(定理) 任意の被除数 a と正の除数 b に対して,−b/2<r≤b/2 の範囲の剰余 r が存在する。
(証明省略) 除数が b>0 のとき,商が q=⌈a/b−0.5⌉,剰余の範囲が −b/2<r≤b/2 となる除法を定義できる。
(定理) 任意の被除数 a と負の除数 b に対して,b/2≤r<−b/2 の範囲の剰余 r が存在する。
(証明省略) 除数が b<0 のとき,商が q=⌈a/b−0.5⌉,剰余の範囲が b/2≤r<−b/2 となる除法を定義できる。
(定理) 任意の被除数 a と負の除数 b に対して,b/2<r≤−b/2 の範囲の剰余 r が存在する。
(証明省略) 除数が b<0 のとき,商が q=⌊a/b+0.5⌋,剰余の範囲が b/2<r≤−b/2 となる除法を定義できる。
この型の除法では,商 q は a÷b の最近接丸め(Round_Half_Up または Round_Half_Down)になる。
|
|
この除法を既定とするプログラミング言語はわずかである。
次のページへ
2015.11.22 作成 / 2020.3.15 更新
Home › 負の数の除法