Python学習チャンネル by PyQ

Pythonのオンライン学習プラットフォームPyQのオフィシャルブログです

「演算子の切り捨て除算(//)と剰余(%)が表す意味がわかりません」

f:id:kenken0326:20200908174737p:plain

質問

切り捨て除算(//)と剰余(%)の問題を解きましたが、 これらの演算子が表す意味がいまいち理解できないので教えてください。

問題のコード

# 商の整数部分
print(10 // 3)
print(100 // 9)
# 余り
print(10 % 3)
print(88 % 7)

答え(実行結果)

3
11
1
4

回答

// は切り捨て除算の演算子です。切り捨て除算は、商の少数部分を切り捨てて、整数部分を求めることです。

%は剰余の演算子です。剰余とは商のあまりのことです。

以下で1つずつ詳しく解説します。

切り捨て除算(//)の解説

//は切り捨て除算の演算子なので整数部分だけが表示されます。

# 商の整数部分
print(10 // 3)
print(100 // 9)

上記の問題を見慣れた計算式に置き換えると下記のようになります。

10 ÷ 3 = 3 .3333333333333335
100 ÷ 9 = 11 .11111111111111

ですので、実行結果が311になりました。

剰余(%)の解説

%はあまりを出す演算子なのであまりだけが表示されます。

# 余り
print(10 % 3)
print(88 % 7)
10 ÷ 3 = 3 あまり 1
88 ÷ 7 = 12 あまり 4

ですので、実行結果が14になります。

Copyright ©2017-2020 BeProud Inc. All rights reserved.