не понимаю в чем ошибка

adislan

Новичок
Пользователь
Окт 21, 2020
20
0
1
В магазине акция: скидка 5% на товары, цена которых превышает 1000 рублей. Напишите программу, отчасти имитирующую работу кассового аппарата: вводятся цены покупаемых товаров, нужно вывести общую стоимость товаров с учётом скидки.
Формат ввода
Несколько действительных чисел — цены на товары. Каждое число записано в отдельной строке.
Последнее число — отрицательное — сигнал остановки

q = 0
w = float(input())
while w != -1:
if w > 1000:
w = w - ((w / 100) * 5)
q = q + w
w = float(input())
print(q)

это мой код. Его проверяет бот, и выдает ошибку
например бот вводит следующее:
25255
754673
264
564
7
34.2
34.54
232.56
45352.2
-10

и программа просто выдает ошибку, либо же не отвечает
Я НЕ ПОНИМАЮ В ЧЕМ ОШИБКА

помогите пожалуйста

кстати с остальными числами программа вроде справляется
 
Последнее редактирование:

stud_55

Модератор
Команда форума
Модератор
Апр 3, 2020
1 522
672
113
Код вставляйте с помощью ... -> код -> python.
Последнее число — отрицательное — сигнал остановки
Я НЕ ПОНИМАЮ В ЧЕМ ОШИБКА
Программа не останавливается при вводе отрицательного числа кроме -1
Замените условие завершения цикла с while w != -1: на while w > 0:.
 
Последнее редактирование:
  • Мне нравится
Реакции: adislan

adislan

Новичок
Пользователь
Окт 21, 2020
20
0
1
уууух
спасибо
такая маленькая ошибка
а я не заметил
чувствую себя глупо
 

Форум IT Специалистов