2017-07-15 7 views
0

これはこれまでのコードです。最終的な結果はユーザーに入力スコアを要求する必要があり、-99が入力されるまでループが続き、その下に「P」または「F」のスコアが印刷されます。誰かが私にそれを手伝ってもらえますか?終わりにPまたはFと一緒に成績のリストを印刷します

scores = [] 

def print_scores(copy_scores): 
    for score in copy_scores[:-1:]: 
     print(copy_scores[-1]) 

def find_min_odd(scores_list): 
    return min(scores_list) 

def set_grades(scores_list): 
    grades = [] 
for score in scores_list: 
    if score >= 50: 
     grades.append('P') 
    elif score < 50: 
     grades.append('F') 

for grade in grades: 
    print('{:>2}'.format(grade)) 
while True: 
    user_input = raw_input ("Please enter your score value: ") 
    for score_value in user_input.split(): 
    if score_value == -99: 
     break 

scores.append(int(score_value)) 
    print_scores(scores) 
    set_grades(scores) 

print('minimum score:', find_min_odd(scores)) 
+1

特にあなたが問題を抱えているどの部分?これははるかに広いです。 – Carcigenicate

+0

最後に成績とPまたはFを印刷しようとしています。出力例50 90 80 F P P –

+0

あなたの質問は何ですか?あなたはそれを達成しようとするコードを持っているようです。エラーが発生していますか?結果が間違っていますか?問題の内容を実際に詳細に説明する必要があります。 – Carcigenicate

答えて

0

問題はあなたのwhileループにあります。あなたのwhileループは、以下のように変更し、私は次のコードは、あなたが

def find_min_odd(scores_list): 
    return min(scores_list) 

grades = [] 
def set_grades(scores_list): 
    for score in scores_list: 
     if score >= 50: 
      grades.append([score,'P']) 
     elif score < 50: 
      grades.append([score,'F']) 
    return grades 

user_input = 0 

scores_list = [] 

while int(user_input) != -99: 
    user_input = input('Please enter your score value') 
    if int(user_input) != -99: 
     scores_list.append(int(user_input)) 

for grade in set_grades(scores_list): 
    print("Score: " + str(grade[0]), "Result:" + grade[1]) 

print('minimum score:', find_min_odd(scores_list)) 

が出力望むものを与えることを願っています:

 
Please enter your score value 20 
Please enter your score value 50 
Please enter your score value 70 
Please enter your score value -99 
Score: 20 Result:F 
Score: 50 Result:P 
Score: 70 Result:P 
minimum score: 20 
+0

よかったです。最後の出力は、パスまたはFかどうかを示す新しい行のリストとして印刷する必要がありますか?また、奇数の最小値を表示する必要があります –

関連する問題