Python演習問題⑧
今回の問題は少し難しいかもしれないので軽く解説をします。
まずは問題がこちらになります。
問題
この問題で大事なのは欠席回数×5をしてその値を点数から引くということです。ここは処理で使うので抑えておきましょう。
入力される形が下記画像のようになります。
ここで大事なのは複数行入力されるというところです。
複数あるのでfor文を使用します。
そして、比較もしないといけないのでif文も使用することになります。
次に入力を見ていきます。
上記のようになります。
入力例1では5回点数と欠席数が表示されているので5回ループ文を通ったことになります。
ここで一旦考えてみて下さい。ここから先は解答です。
コード
def Sample10():
"""テストの点数"""
N, M = map(int, input().split()) # Nが人数、Mが合格点
for i in range(1,N+1):
a, b = map(int, input().split()) # a点数,b欠席回数
if M != 0: # 0以外
b_1 = b * 5 # 欠席回数に5を掛ける
a_1 = a - b_1 # 掛けた値から点数を引く
if a_1 >= M: # 合格点以上を判断
print(i)
else: # 0の場合は掛け算をしたら0になるため正しく処理をしない。
a_1 = a - b
if a_1 >= M:
print(i)
Sample10()
コメントも書いているので勉強してください。
以上になります。
この記事が参加している募集
この記事が気に入ったらサポートをしてみませんか?