質問
切り捨て除算(//)と剰余(%)の問題を解きましたが、 これらの演算子が表す意味がいまいち理解できないので教えてください。
問題のコード
# 商の整数部分 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
ですので、実行結果が3
、11
になりました。
剰余(%)の解説
%
はあまりを出す演算子なのであまりだけが表示されます。
# 余り print(10 % 3) print(88 % 7)
10 ÷ 3 = 3 あまり 1 88 ÷ 7 = 12 あまり 4
ですので、実行結果が1
、4
になります。