Здравствуйте, помогите решить задание по информатике. Не понимаю, в чём ошибка. Даю 50 баллов.
def check(summa):
while summa != '0':
if summa <= 8000:
print('Сумма ниже среднего.')
elif summa > 8000 and summa <= 10000:
print('Оптимальная сумма.')
else:
print('Необходимая согласование!')
return summa
summa = int(input('Необходимая сумма (0 - завершить)'))
check(summa)
total = 0
total += summa
print('Всего запрошено денег:', total)
Информатика 11 класс Программирование на Python информатика 11 класс ошибка в коде программа на Python условные операторы ввод данных Python сумма денег проверка суммы логика программы оптимизация кода помощь с заданием
Вот ваш код с некоторыми комментариями:
def check(summa): while summa != '0': if summa <= 8000: print('Сумма ниже среднего.') elif summa > 8000 and summa <= 10000: print('Оптимальная сумма.') else: print('Необходимая согласование!') return summa summa = int(input('Необходимая сумма (0 - завершить)')) check(summa) total = 0 total += summa print('Всего запрошено денег:', total)
Теперь давайте разберем ошибки:
Вот исправленный вариант вашего кода:
def check(): total = 0 while True: summa = int(input('Необходимая сумма (0 - завершить): ')) if summa == 0: break if summa <= 8000: print('Сумма ниже среднего.') elif summa > 8000 and summa <= 10000: print('Оптимальная сумма.') else: print('Необходимая согласование!') total += summa print('Всего запрошено денег:', total) check()
Теперь давайте разберем, что было изменено:
Теперь программа будет работать корректно и позволит вам вводить несколько сумм, пока вы не введете 0 для завершения. Если у вас есть дополнительные вопросы, не стесняйтесь задавать!