割り算の余り(あまり)を計算する方法です。
割り算の余りを使った場合分けは、プログラム問題の定番です。
割り算の基本
割り算は「除算」、余りは「剰余」 といいます。
余りを取得する計算を、剰余演算と呼び、ExcelではMOD関数を使います。
a を n で除算した商q、剰余r を式で表すと次のようになります。
a ÷ n = q 剰余 r
a = nq + r
Pythonでの演算子は、次のようになります。
a / n | 除算 | 10 / 3 → 3.333 |
a // n | 整数除算(商q) | 10 // 3 → 3 |
a % n | 剰余演算(剰余r) | 10 % 3 → 1 |
余り(剰余)の使い方
余り(剰余)には、割った数n(除数)より小さい性質があります。
除数が3のときは、剰余は[0, 1, 2]のどれかになります。
秒単位を分単位に変換
60秒で1分なので、60で整数除算した商が「分」、剰余が「秒」になります。
# 200秒を分単位に変換
min = 200 // 60
sec = 200 % 60
print(min, '分', sec, '秒')
3 分 20 秒
偶数と奇数の分類
2で整数除算した剰余を、if文で条件分岐させると、偶数と奇数に分類できます。
# 偶数と奇数に分類する関数
def hantyou(x):
amari = x % 2
if amari == 0:
print('偶数')
elif amari == 1:
print('奇数')
関数hantyouで、4を判定します。
# 関数hantyou()の実行
hantyou(4)
偶数
負数(マイナス)の剰余
負数で割ったり、負数を割ったりする計算は、プログラミング言語によって結果がことなります。
基本的に、負数の剰余は使用しないようにしましょう。
まとめ
- 割り算の余りを求める計算ができた
- 余り(剰余)の使い方がわかった