Информатика, вопрос задал jjjggt , 6 лет назад

Помогите пожалуйста
Дан фрагмент программы:

if cost < 1000:
print('Скидка 0%')
elif cost < 2000:
print('Скидка 2%')
elif cost < 5000:
print('Скидка 5%')
else:
print('Скидка 10%')
Какую скидку можно будет получить, если стоимость покупки cost = 999?

Ответы на вопрос

Ответил Kean1234
1

Ответ:

Скидка 0% т.к удовлетворяет первому условию

Объяснение:

Давайте попробуем разобраться в алгоритме. Для начал что такое АЛГОРИТМ?
Алгоритм - Совокупность последовательных шагов, схема действий, приводящих к желаемому результату.
Все действия выполняются сверх вниз.

В данном случае используется условные блоки, выход из которых осуществляет при выполнения одним из условий, если ничего не совпало то выводиться - "Скидка 10%".

Давайте переведем задачу на русский язык, думаю все намного проще чем кажется:

Если 999 < 1000:
   вывести('Скидка 10%')
иначе если 999 < 2000:

   вывести('Скидка 2%')

иначе если 999 < 5000:

   вывести('Скидка 5%')

иначе:

   вывести('Скидка 10%')

Теперь мы наглядно видим, что 999 < 1000, то есть он выполняет первое условия условного блока, выполняет его тело и выходит из него. Соответственно как только условию выполнилось, программа перестанет проверят остальные. Ведь слово иначе(в противном случае) означает, что предыдущее условия НЕ выполнено

Новые вопросы