Условный оператор. Логические операции

 Логические операторы

 Расположите логические операторы в порядке уменьшения их приоритета (сверху – оператор с самым высоким приоритетом, снизу – оператор с самым низким приоритетом). 

  • Логическое отрицание not
  • Логическое умножение and
  • Логическое сложение or

 Приведенная ниже таблица истинности показывает разные комбинации истинности и ложности значений, соединённых логическими операторами. Заполните таблицу, выбрав True или False.

  • True and False             False       
  • True and True              True
  • False and True             False
  • False and False           False
  • True or False                True
  • True or True                 True
  • False or True                True
  • False or False              False
  • not True                        False
  • not False                       True

 Даны переменные a = 2, b = 4, c = 6. Заполните таблицу, выбрав True или False.

  • a == 2 or b > 2       True
  • 6 <= c and a > 3    False
  • 1 != b and c != 3    True
  • a >= -1 or a <= b   True
  • not (a > 2)              True
  • not (c <= 10)          False

 Что покажет приведённый ниже код?:

num1 = 34
num2 = 81
if num1 // 9 == 0 or num2 % 9 == 0:
    print('число', num1, 'выиграло')
else:
    print('число', num2, 'выиграло')

 Ответ: число 34 выиграло

 Что покажет приведённый ниже код?:

a = int(input())

if a >= 2 and a <= 17:
    b = 3
    p = a * a + b * b
else:
    b = 5

p = (a + b) * (a + b)
print(p)

 если на вход программе будет подана строка: 7

 Ответ: 100

 Напишите программу, которая принимает целое число x и определяет, принадлежит ли данное число промежутку  от -1 до 17 (не включительно).

x = int(input())

if -1 < x < 17:
    print('Принадлежит')
else:
    print('Не принадлежит')

 Напишите программу, которая принимает целое число x и определяет, принадлежит ли данное число промежуткам до -3 и от 7 (включительно).

x = int(input())

if x <= -3 or x >= 7:
    print('Принадлежит')
else:
    print('Не принадлежит')

 Напишите программу, которая принимает целое число x и определяет, принадлежит ли данное число промежуткам от -30(не включительно) до -2(включительно) и 7(не включительно) до 25(включительно) .

x = int(input())

if (-30 < x <= -2) or (7 < x <= 25):
    print('Принадлежит')
else:
    print('Не принадлежит')

 Назовём число красивым, если оно является четырёхзначным и делится нацело на 7 или на 17. Напишите программу, определяющую, является ли введённое число красивым. Программа должна вывести «YES» (без кавычек), если число является красивым, или «NO» (без кавычек) в противном случае.

x = int(input())

if (999 < x <= 9999) and ((x % 7 == 0) or (x % 17 == 0)):

    print('YES')
else:
    print('NO')

 Напишите программу, которая принимает три положительных числа и определяет, существует ли невырожденный треугольник с такими сторонами.Программа должна вывести «YES» или «NO» в соответствии с условием задачи.

a = int(input())
b = int(input())
c = int(input())

if a < (b + c) and b < (a + c) and c < (a + b):
    print('YES')
else:
    print('NO')

 Напишите программу, которая определяет, является ли год с данным номером високосным. Если год является високосным, то выведите «YES», иначе выведите «NO». Год является високосным, если его номер кратен 4, но не кратен 100, или если он кратен 400.

a = int(input())

if (a % 4 == 0 and a % 100 != 0) or a % 400 == 0:
    print('YES')
else:
    print('NO')

 Даны две различные клетки шахматной доски. Напишите программу, которая определяет, может ли ладья попасть с первой клетки на вторую одним ходом. Программа получает на вход четыре числа от 1 до 8 каждое, задающие номер столбца и номер строки сначала для первой клетки, потом для второй клетки. Программа должна вывести «YES», если из первой клетки ходом ладьи можно попасть во вторую, или «NO» в противном случае.

a = int(input()) 
b = int(input()) 
aa = int(input())
bb = int(input()) 

if (a != aa and b == bb) or (b != bb and a == aa):
    print('YES')
else:
    print('NO')

 Даны две различные клетки шахматной доски. Напишите программу, которая определяет, может ли король попасть с первой клетки на вторую одним ходом. Программа получает на вход четыре числа от 1 до 8 каждое, задающие номер столбца и номер строки сначала для первой клетки, потом для второй клетки. Программа должна вывести «YES», если из первой клетки ходом короля можно попасть во вторую, или «NO» в противном случае.

v = int(input())
h = int(input())
vv = int(input())
hh = int(input())

a = vv - v
b = hh - h
if (-1 <= a <= 1 ) and (-1 <= b <= 1):
    print('YES')
else:
    print('NO')