Условный оператор. Вложенные и каскадные условия
Условный оператор
Зум бросил вызов Флэшу и предложил ему честный поединок в виде гонки вокруг магнетара. В случае проигрыша эта нейтронная звезда зарядится и уничтожит мир, поэтому Флэш решил не рисковать без причины и узнать у своего друга Циско Рамона, есть ли смысл принимать вызов. Циско получил данные, что скорость Зума равна n, а скорость Флэша равна k. Если Зум быстрее Флэша, нужно вывести «NO», а если Флэш быстрее Зума, нужно вывести «YES». В случае же если их скорости равны, нужно вывести «Don't know».
n = int(input()) k = int(input()) if n > k: print('NO') elif n < k: print('YES') else: print("Don't know")
Напишите программу, которая классифицирует треугольник на основе длин его сторон. Программа должна принимать три числа, каждое из которых представляет собой длину одной из его сторон. В результате программа должна определить, является ли треугольник равносторонним, равнобедренным или разносторонним.Программа должна вывести на экран текст – тип треугольника («Равносторонний», «Равнобедренный» или «Разносторонний»).
a = int(input()) b = int(input()) c = int(input()) if a == b == c: print('Равносторонний') elif a == b or a == c or b == c: print('Равнобедренный') else: print('Разносторонний')
Даны три различных целых числа. Напишите программу, которая находит серединное значение из этих чисел.
a = int(input()) b = int(input()) c = int(input())
if (b < a < c) or (c < a < b): print(a) elif (a < b < c) or (c < b < a): print(b) else: print(c)
Дан порядковый номер месяца (1, 2,…, 12). Напишите программу, которая выводит на экран количество дней в этом месяце. Принять, что год является невисокосным.
m = int(input()) if m == 2: print(28) elif m == 4 or m == 6 or m == 9 or m == 11: print(30) else: print(31)
Известен вес боксера-любителя (целое число). Известно, что вес таков, что боксер может быть отнесён к одной из трех весовых категорий:
- Легкий вес – до 60 кг (невключительно);
- Первый полусредний вес – до 64 кг (невключительно);
- Полусредний вес – до 69 кг (невключительно).
a = int(input()) if a < 60: print('Легкий вес') elif a < 64: print('Первый полусредний вес') elif a < 69: print('Полусредний вес')
Напишите программу, которая считывает с клавиатуры два целых числа и строку. Если эта строка является обозначением одной из четырёх математических операций (+, -, *, /), то выведите результат применения этой операции к введённым ранее числам, в противном случае выведите «Неверная операция» (без кавычек). Если пользователь захочет поделить на ноль, выведите текст «На ноль делить нельзя!» (без кавычек).
a = int(input()) b = int(input()) c = input('') if c == '+': print(a + b) elif c == '-': print(a - b) elif c == '*': print(a * b) elif c == '/' and b != 0: print(a / b) elif c == '/' and b == 0: print('На ноль делить нельзя!') else: print('Неверная операция')
Красный, синий и желтый называются основными цветами, потому что их нельзя получить путем смешения других цветов. При смешивании двух основных цветов получается вторичный цвет:
- если смешать красный и синий, то получится фиолетовый;
- если смешать красный и желтый, то получится оранжевый;
- если смешать синий и желтый, то получится зеленый.
Напишите программу, которая считывает названия двух основных цветов для смешивания. Если пользователь вводит что-нибудь помимо названий «красный», «синий» или «желтый», то программа должна вывести сообщение об ошибке. В противном случае программа должна вывести название вторичного цвета, который получится в результате.
a = input() c = input() r = 'красный' b = 'синий' y = 'желтый' if (a == r and c == b) or (a == b and c == r): print('фиолетовый') elif (a == r and c == y) or (a == y and c == r): print('оранжевый') elif (a == b and c == y) or (a == y and c == b): print('зеленый') elif a == r and c == r: print('красный') elif a == b and c == b: print('синий') elif a == y and c == y: print('желтый') else: print('ошибка цвета')
На колесе рулетки карманы пронумерованы от 0 до 36. Ниже приведены цвета карманов:
- карман 0 зеленый;
- для карманов с 1 по 10 карманы с нечетным номером имеют красный цвет, карманы с четным номером – черный;
- для карманов с 11 по 18 карманы с нечетным номером имеют черный цвет, карманы с четным номером – красный;
- для карманов с 19 по 28 карманы с нечетным номером имеют красный цвет, карманы с четным номером – черный;
- для карманов с 29 по 36 карманы с нечетным номером имеют черный цвет, карманы с четным номером – красный.
Напишите программу, которая считывает номер кармана и показывает, является ли этот карман зеленым, красным или черным. Программа должна вывести сообщение об ошибке, если пользователь вводит число, которое лежит вне диапазона от 0 до 36.
a = int(input()) if (a % 2 != 0) and (1 <= a <= 10 or 19 <= a <= 28): # нечет print('красный') elif (a % 2 == 0) and (1 <= a <= 10 or 19 <= a <= 28): # чет print('черный') elif (a % 2 != 0) and (11 <= a <= 18 or 29 <= a <= 36): # нечёт print('черный') elif (a % 2 == 0) and (11 <= a <= 18 or 29 <= a <= 36): # чёт print('красный') elif a == 0: print('зеленый') else: print('ошибка ввода')
На числовой прямой даны два отрезка: [a1; b1] и [a2; b2]. Напишите программу, которая находит их пересечение.
Пересечением двух отрезков может быть:
- отрезок;
- точка;
- пустое множество.
Программа должна вывести на экран границы отрезка, являющегося пересечением, либо общую точку, либо текст «пустое множество».
a = int(input()) b = int(input()) c = int(input()) d = int(input()) if b < c or a > d: print('пустое множество') elif a < c and d < b: print(c, d) elif a > c and d > b: print(a, b) elif a < c < b and b < d: print(c, b) elif c < a < d and d < b: print(a, d) elif b == c: print(b) elif d == a: print(d) elif a == c and b == d: print(a) elif a == c and b < d: print(a, b) elif b == d and c < a: print(a, b) elif a == c and d < b: print(a, d) elif b == d and a < c: print(c, b)