半世紀生きてきて初めて知った「マイナスの割り算の余り」
この記事は、プログラム言語の自己学習をしていてふと気になった
“マイナス値の割り算” の話です。
商と余りがある計算をしたとき、想像を超える答えに出会い

- はじめに
- 割り算の話
- 結論
- なぜ商が −1 ではなく −2 になるのか
- −3 ÷ 2 を定義に沿って考える
- 「高校で習った気がするのに覚えていない」理由
- 関連:マイナスの四捨五入・切り上げ・切り捨て
- まとめ
はじめに
プログラム言語の自己学習をしていた。
データ型や代入を勉強しているとき、マイナス値の割り算が出てきた。
単純な計算のはずなのに、その答えが想像と違い驚いた。
半世紀以上生きてきて、こんな事も知らなかったなんて。
割り算の話
まずは、余りが発生する割り算の基本から。
正の数で一番シンプルな例は次の通り。
3 ÷ 2 = 1 … 1
文字で表すとこうなる。
- 問:3 の中に 2 はいくつあるか?
- 答:1 個あって、余りは 1
この「文字で表す」というところで、ふと気づいた。
マイナスの数字の中にプラスの数字がいくつあるか?
そもそもどういう意味だろう。
数式で表すと、こうなる。
−3 ÷ 2 = −2 … 1
この答えに驚いた。
正の数の割り算の“逆”だから、てっきり 商は −1、余りは −1 になると思っていた。
しかし、数学の世界では「余りの定義」がそれを許さない。
結論
−3 ÷ 2 の商は −2、余りは 1。
これは「余りは必ず 0 以上で、割る数より小さい」というルールを守るためだった。
そんなルールがあるなんて、知らなかった。
なぜ商が −1 ではなく −2 になるのか
整数の割り算には、次のような厳密な定義がある。
[ a = bq + r ]
ただし
- r(余り)は 0 ≤ r < |b|
- q は整数
この「余りは必ず 0 以上」という条件が、マイナスの割り算で直感とズレる原因。
−3 ÷ 2 を定義に沿って考える
商を −1 と仮定すると
[ -3 = 2 \cdot (-1) + r ]
[ -3 = -2 + r ]
[ r = -1 ]
余りが −1 になり、定義違反。
商を −2 とすると
[ -3 = 2 \cdot (-2) + r ]
[ -3 = -4 + r ]
[ r = 1 ]
余りが 0 ≤ r < 2 を満たす。
よって、正しい答えは −2 … 1。
「高校で習った気がするのに覚えていない」理由
高校数学Aの「整数の性質」で扱われている内容だが、
実際には次のような理由で記憶に残りにくい。
- 授業では正の数の例がほとんど
- マイナスの割り算は “余りが出ないケース” ばかり
- 実生活で使う機会がほぼない
- そもそも深掘りされない単元
そのため、大人になってから初めて知る人が多い。
関連:マイナスの四捨五入・切り上げ・切り捨て
マイナスがつくと直感とズレる代表例。
切り捨て(小さい方向へ)
- 3.2 → 3
- −3.2 → −4
切り上げ(大きい方向へ)
- 3.2 → 4
- −3.2 → −3
四捨五入(0 からの距離で判断)
- −3.5 → −4
- −3.4 → −3
割り算の商と同じく、数直線上での位置関係 を意識すると理解しやすい。
まとめ
- −3 ÷ 2 = −2 … 1 は「余りの定義」によって決まる
- マイナスがつくと直感とズレるのは自然
- 大人になってから知る数学は、むしろ面白い
- 四捨五入や切り捨ても、数直線で考えると腑に落ちる
そもそも実生活の中で、マイナス値の割り算に出会う機会がどれほどあるだろう。
日常の中でふと出会う数学の再発見は、静かな驚きと小さな楽しさを運んでくれる。