Nested conditional statement. Difficult conditions




Предыдущую задачу можно решить более коротким способом, используя сложные условия. 
Давайте разберемся, что такое СЛОЖНЫЕ УСЛОВИЯ

Простейшие условия состоят из одного отношения (больше, меньше и т.п.) Но иногда необходимо объединение простых условий в более сложные, например: на улице холодно и идет дождь. Два простых условия (на улице холодно), (на улице идет дождь) здесь связаны связкой И.

СЛОЖНОЕ УСЛОВИЕ - состоит из двух или нескольких простых отношений (условий), которые объединяются с помощью логических операций
  И - логическое умножение - на языке Python записывается как and 
  ИЛИ - логическое умножение - на языке Python записывается как or
  НЕ - логическое умножение -на языке Python записывается как not

Операция И - требует одновременного выполнения двух условий
  условие 1 and условие 2   - будет принимать истинное значение, только если оба простых условия истинны одновременно
причем, если условие 1 ложно, то условие 2 проверяться не будет

Операция ИЛИ - требует выполнения хотя бы одного из условий
  условие 1 or  условие 2   - будет принимать ложное значение, только если оба простых условия ложны одновременно
причем, если условие 1 истинно, то условие 2 проверяться не будет

Операция НЕ 
 not условие 1 - будет принимать ложное значение, если условие 1 истинно и наоборот
Например, следующие два условия равносильны:   A>B     и    not (A<=B)

ПРИОРИТЕТ ВЫПОЛНЕНИЯ ЛОГИЧЕСКИХ ОПЕРАЦИЙ И ОТНОШЕНИЙ
1 операции в скобках
2 операция НЕ
3 логические отношения >, <, >=, <=, ==, !=
4 операция И
5 операция ИЛИ
Для изменения порядка действий используются круглые скобки

ЛОГИЧЕСКИЕ ПЕРЕМЕННЫЕ
Во многих языках программирования есть возможность использовать переменные, которые хранят логические значения ("истина"/"ложь"). В Python такие переменные могут принимать значения True (истина) или False (ложь). Например, программа  

a = True
b = False
print(a or b)
Выведет на экран True.
Логические переменные относятся к типу bool, названному в честь английского математика Джорджа Буля - создателя алгебры логики.

 
 

Task
В рассмотренной нами предыдущей задаче необходимо проверить условие, в котором число должно быть больше или равно 20 и меньше или равно 40. 
Сократить предыдущую задачу можно, используя сложные условия.

Во 2й строке программы вместо знака подчеркивания (_) поставьте нужную логическую связку.
Python
1
n = int(input())        
2
3
      print("YES")         
4
else:      
5
      print ("NO")         
Your last submission is saved in the editor window.
     

Results:

All results: