<一覧に戻る

Pythonの整数除算と剰余(//、%)

プログラミングを学び始めたばかりの方にとって、「整数除算」や「剰余」という言葉は少し難しく感じるかもしれません。 しかし、これらの演算子は、実は私たちの日常生活でも無意識に使っている計算方法なのです。

例えば、「30個のお菓子を7人で均等に分けたら、1人何個もらえて、何個余るか?」という問題を考えるとき、私たちは自然と整数除算と剰余の概念を使っています。 この計算を簡単に行うための特別な演算子が用意されており、それが「//」(整数除算)と「%」(剰余)なのです。

整数除算とは?

整数除算は、通常の割り算とは少し異なる特別な演算方法です。 通常の割り算では小数点以下の値も含めた正確な結果が得られますが、整数除算では商の整数部分だけを取り出すという特徴があります。

具体的な例で考えてみましょう。通常の割り算との違いは以下の通りです。

  • 通常の割り算:10 ÷ 3 = 3.333...
  • 整数除算:10 // 3 = 3

このように、整数除算では小数点以下が自動的に切り捨てられ、整数の結果のみが返されます。

整数除算のやり方

以下は、整数除算のサンプルコードです。 整数除算は、//を使います。

# 整数除算の例
numerator = 10
denominator = 3

result = numerator // denominator
print("整数除算の結果:", result)

このコードでは、10を3で割っています。通常の割り算であれば、10 ÷ 3 の結果は3.333...ですが、整数除算を使うことで小数点以下が切り捨てられ、3が結果として返されます。

剰余とは?

剰余演算子(%)は、割り算を行った際の余りを返す演算子です。 小学校で習った「あまりのある割り算」を思い出してください。

「10 ÷ 3 = 3 あまり 1」の「あまり 1」の部分が、剰余演算子で得られる値です。

剰余演算子の使い方

以下は、剰余演算子のサンプルコードです。 剰余演算子は、%を使います。

# 剰余の例
numerator = 10
denominator = 3

remainder = numerator % denominator
print("剰余の結果:", remainder)

このコードでは、10を3で割ったときの余りを計算しています。 10 / 3の結果は3で、余りは1なので、remainderには1が代入され、結果として出力されます。

整数除算と剰余の組み合わせ

整数除算と剰余を組み合わせて使うことで、より複雑な計算が可能になります。 たとえば、特定の数が偶数か奇数かを判断することができます。

# 偶数か奇数かを判断する
number = 10

if number % 2 == 0:
    print(number, "は偶数です。")
else:
    print(number, "は奇数です。")

このコードでは、numberが10の場合に偶数か奇数かを判断しています。

number % 2が0であれば偶数と判断され、"10 は偶数です。"と出力されます。逆に、numberが11であれば、1が返され、"11 は奇数です。"と出力されます。

練習問題

ここで、以下の練習問題をやってみましょう!

  1. 整数除算を使って、25 // 4の結果を出力してみましょう。
  2. 剰余を使って、25 % 4の結果を出力してみましょう。
  3. ユーザーから整数を入力させ、その数が偶数か奇数かを判断するプログラムを作成してみましょう。

例解答

# 1. 整数除算
print("25 // 4の結果:", 25 // 4)

# 2. 剰余
print("25 % 4の結果:", 25 % 4)

# 3. 偶数か奇数かを判断するプログラム
number = int(input("整数を入力してください: "))
if number % 2 == 0:
    print(number, "は偶数です。")
else:
    print(number, "は奇数です。")

まとめ

Pythonにおける整数除算(//)と剰余(%)演算子について、基礎から応用まで幅広く解説しました。 これらの演算子は一見シンプルに見えますが、実際のプログラミングでは非常に多くの場面で活用される重要な機能です。

演算子を使いこなすことで、Pythonでの数値計算がさらに便利になります。ぜひ、自分で試してみてください。

出力結果: