Простой код на python. некорректно работает. - Общение Python мододелов

Вопрос Простой код на python. некорректно работает.

Регистрация
31 Дек 2013
Сообщения
91
Репутация
0
Спасибо
0
Монет
0
Добрый день!

Несколько дней назад начал осваивать первый язык программирования, а именно Python.

Написал простую программу, но она выводит неправильный ответ.

Прошу доступно объяснить почему так происходит.
309491023_a60587e95de1092280b88f498de14405_800.png

Задача максимально простая - из 4 чисел (введенных пользователем)

Отобразить наименьшее число.

Знаю, что можно использовать функцию min, но в данном контексте задача сделать именно через if.



Вопрос:



Почему программа выводит два числа? 100 и 5.

Если в первом условии прописано, что "ЕСЛИ 100 МЕНЬШЕ 200 И 5 И 300: НАПИШИ 100"

Очевидно, что 100 меньше 200, НО оно же не меньше 5.

Значит вывод команда "принт" не должна сработать.
 
Регистрация
19 Ноя 2013
Сообщения
76
Репутация
0
Спасибо
0
Монет
0
Вместо того, чтоб бы синтаксис мучить, разобрался бы с булевой алгеброй и приоритетом операций.
 
Регистрация
10 Сен 2013
Сообщения
77
Репутация
0
Спасибо
0
Монет
0
Ты не до конца понял смысл and. Он разграничивает выражения, в твоём случае это выглядит как (a > 0 | a) – интерпретатор не понимает что это относится к первому выражению и исполняет их по очереди сначала а > 0 а потом просто а. Надо явно объяснить интрпритатору a > 0 and a > a, and это как точка, как завершение и начало нового выражения, он не связывает а разграничивает.
 
Регистрация
13 Окт 2013
Сообщения
91
Репутация
-3
Спасибо
0
Монет
0
Всё правильно работает.
В первом условии прописано, что "ЕСЛИ 100 МЕНЬШЕ 200 и С ненулевое и Д ненулевое то НАПИШИ 100"
 
Сверху Снизу