Train the Trainers (Nested Loops excercise) - помощ за кода
Здравейте, опитах да реша задачата, и на конзолата тръгва добре в началото... подавам брой членове на жури, подавам презентация, после подавам оценки и смята дотук добре. Когато обаче опитам да подам следващото име на презентация, подам следващите оценки очаква с едно подаване повече. На конзолата например нещата изглеждат така:
2
while
6.00
5.50
while - 5.75
for
5.84
5.66
5.00
5.84 - 5.33
nested
4.00
3.00
2.00
4.00 - 2.50
Престава да приема имената на презентациите след първия път, а приема първото число за име и после намира средното от следващите числа.
Ето го кода. Не се тревожете за форматирането и смятането сега надолу, но ще съм много благодарна, ако някой обясни горния проблем. Благодаря
jury_numbers = int( input() ) sum_grades = 0 total_grades = 0 presentation_counter = 0 while True: name_presentation = input() presentation_counter += 1 for i in range(jury_numbers): grade = float(input()) sum_grades += grade average_grade_per_presentation = sum_grades / jury_numbers total_grades += average_grade_per_presentation print( f'{name_presentation} - {average_grade_per_presentation: .2f}' ) sum_grades = 0 name_presentation = input() if name_presentation == 'Finish': print(f"Student's final assessment is {total_grades/presentation_counter: .2f}")
Мерси много :) надолу мисля, че ще го оправя, това ме объркваше с подаването...
Може да пуснеш решението иначе, да. То по условие е "цикъл while, докато е различен от Finish", но понеже пак имах същия проблем, започнах да експериментирам... все пак по-добре да попитам преди да се оплета съвсем. Мерси пак
Радвам, че успях да помогна. :) Успех на изпита.