Полные решения модуля 4.3 из курса «Поколение Python: курс для начинающих» с степика по питону. Все ответы даны на питоне и выполняются без ошибок.
Опубликованы они для самопроверки. Не обманывайте себя и решайте сами, позже сверяясь с моими вариантами. Ссылка на степик, курс по питону для начинающих.
Гонка спидстеров
Зум бросил вызов Флэшу и предложил ему честный поединок в виде гонки вокруг магнетара. В случае проигрыша эта нейтронная звезда зарядится и уничтожит мир, поэтому Флэш решил не рисковать без причины, и узнать у своего друга Циско Рамона есть ли смысл принимать вызов. Циско получил данные, что скорость Зума равна n, а скорость Флэша равна k.
Напишите программу, которая должна вывести ответ Циско на вопрос Флэша.
Zoom_Speed = int(input()) # Скорость Зума
Flash_Speed = int(input()) # Скорость Флеша
# Если Зум быстрее Флеша - Флеш проиграет
if Zoom_Speed > Flash_Speed:
print('NO')
# Если Флеш быстрее Зума - Флеш выиграет
elif Flash_Speed > Zoom_Speed:
print('YES')
# Если скорость Флеша и Зума одинакова, то выиграет тот, на чьей стороне будет удача
else:
print("Don't know")
Вид треугольника
Напишите программу, которая принимает три положительных числа и определяет вид треугольника, длины сторон которого равны введенным числам.
# Получаем длины сторон треугольника и сохраняем их в переменных a, b, c
a = int(input())
b = int(input())
c = int(input())
# Проверяем, является ли треугольник равносторонним (все стороны равны)
if a == b == c:
print("Равносторонний")
# Проверяем, является ли треугольник равнобедренным (две стороны равны)
# и при этом не является равносторонним (не все стороны равны)
if (a == b or a == c or b == c) and (a != c or a != b or b != c):
print("Равнобедренный")
# Если ни одна сторона не ровна другой то треугольник считается разносторонним (все стороны разные)
if a != b and a != c and c != b:
print("Разносторонний")
Среднее число
Даны три различных целых числа. Напишите программу, которая находит среднее по величине число.
# Получаем три целых числа и сохраняем их в переменных a, b, c
a, b, c = int(input()), int(input()), int(input())
# Если условие выполняется, то b - это второе по величине число.
if a < b < c or a > b > c:
print(b)
# Если это условие выполняется, то c - это второе по величине число.
elif b < c < a or b > c > a:
print(c)
# Если ни одно из условий не выполняется, то a - это второе по величине число.
else:
print(a)
Количество дней
Дан порядковый номер месяца (1,2,…, 12). Напишите программу, которая выводит на экран количество дней в этом месяце. Принять, что год является невисокосным.
m = int(input())
# Если это февраль
if m == 2:
print('28')
elif m <= 7: # если месяц до июля
print(30 + m%2 ) # то к 30 дням добавляем остаток от деления месяца
else:
print(31 - m%2 ) # то из 31 дня убавляем остаток от деления месяца
Церемония взвешивания
Известен вес боксера-любителя (целое число). Известно, что вес таков, что боксер может быть отнесён к одной из трех весовых категорий:
Легкий вес – до 60 кг; Первый полусредний вес – до 64 кг; Полусредний вес – до 69 кг.
Напишите программу, определяющую, в какой категории будет выступать данный боксер.
# Получаем вес боксера и сохраняем его в переменной n
n = int(input())
# Проверяем, если вес боксера меньше 60 кг, то выводим 'Легкий вес'
if n < 60:
print('Легкий вес')
# Если вес боксера больше или равен 60 кг и меньше 64 кг, то выводим 'Первый полусредний вес'
elif n < 64:
print('Первый полусредний вес')
# Если вес боксера больше или равен 64 кг и меньше 69 кг, то выводим 'Полусредний вес'
elif n < 69:
print('Полусредний вес')
Самописный калькулятор ?️
Напишите программу, которая считывает с клавиатуры два целых числа и строку. Если эта строка является обозначением одной из четырёх математических операций (+, -, *, /), то выведите результат применения этой операции к введённым ранее числам, в противном случае выведите «Неверная операция». Если пользователь захочет поделить на ноль, выведите текст «На ноль делить нельзя!».
# Получаем два целых числа и сохраняем их в переменных a и b
a, b = int(input()), int(input())
# Считываем операцию (+, -, *, /) с клавиатуры и сохраняем её в переменной s
s = input()
# Проверяем, какая операция введена
if s == '+': # Если операция - сложение
print(a + b)
elif s == '-': # Если операция - вычитание
print(a - b)
elif s == '*': # Если операция - умножение
print(a * b)
elif s == '/': # Если операция - деление
if b == 0: # Проверяем, делитель не равен нулю
print('На ноль делить нельзя!')
else:
print(a / b)
else: # Если введена неверная операция
print('Неверная операция')
Цветовой микшер ?️
Красный, синий и желтый называются основными цветами, потому что их нельзя получить путем смешения других цветов. При смешивании двух основных цветов получается вторичный цвет:
если смешать красный и синий, то получится фиолетовый; если смешать красный и желтый, то получится оранжевый; если смешать синий и желтый, то получится зеленый.
Напишите программу, которая считывает названия двух основных цветов для смешивания. Если пользователь вводит что-нибудь помимо названий «красный», «синий» или «желтый», то программа должна вывести сообщение об ошибке. В противном случае программа должна вывести название вторичного цвета, который получится в результате.
# Получаем два цвета и сохраняем их в переменных a и b
a = input()
b = input()
# Проверяем, какие цвета введены и выводим соответствующий результат смешения
if (a == 'красный' and b == 'синий') or (a == 'синий' and b == 'красный'):
print('фиолетовый')
elif a == 'красный' and b == 'красный':
print('красный')
elif (a == 'красный' and b == 'желтый') or (a == 'желтый' and b == 'красный'):
print('оранжевый')
elif a == 'желтый' and b == 'желтый':
print('желтый')
elif (a == 'синий' and b == 'желтый') or (a == 'желтый' and b == 'синий'):
print('зеленый')
elif a == 'синий' and b == 'синий':
print('синий')
else:
print('ошибка цвета')
Цвета колеса рулетки ?️
На колесе рулетки карманы пронумерованы от 0 до 36. Ниже приведены цвета карманов:
карман 0 зеленый; для карманов с 1 по 10 карманы с нечетным номером имеют красный цвет, карманы с четным номером – черный; для карманов с 11 по 18 карманы с нечетным номером имеют черный цвет, карманы с четным номером – красный; для карманов с 19 по 28 карманы с нечетным номером имеют красный цвет, карманы с четным номером – черный; для карманов с 29 по 36 карманы с нечетным номером имеют черный цвет, карманы с четным номером – красный.
Напишите программу, которая считывает номер кармана и показывает, является ли этот карман зеленым, красным или черным. Программа должна вывести сообщение об ошибке, если пользователь вводит число, которое лежит вне диапазона от 0 до 36.
# Получаем число и сохраняем его в переменной n
n = int(input())
# Проверяем допустимый диапазон числа
if n < 0 or n > 36:
print('ошибка ввода')
# Обработка случая, когда n равно 0 (зеленый)
elif n == 0:
print('зеленый')
# Обработка чисел от 1 до 10 и от 19 до 28 (черный и красный чередуются)
elif 1 <= n <= 10 or 19 <= n <= 28:
if n % 2 == 0: # Четные числа - черные
print('черный')
else: # Нечетные числа - красные
print('красный')
# Обработка чисел от 11 до 18 и от 29 до 36 (красный и черный чередуются)
elif 11 <= n <= 18 or 29 <= n <= 36:
if n % 2 == 0: # Четные числа - красные
print('красный')
else: # Нечетные числа - черные
print('черный')
Пересечение отрезков ?️?️
На числовой прямой даны два отрезка: [a1; b1] и [a2; b2]. Напишите программу, которая находит их пересечение.
Пересечением двух отрезков может быть: отрезок; точка; пустое множество.
# Получаем координаты первого отрезка
a1 = int(input()) # Левая граница первого отрезка
b1 = int(input()) # Правая граница первого отрезка
# Получаем координаты второго отрезка
a2 = int(input()) # Левая граница второго отрезка
b2 = int(input()) # Правая граница второго отрезка
# Проверяем, если отрезки не пересекаются или имеют общую точку
if a2 > b1 or a1 > b2: # Отсутствие пересечения
print('пустое множество')
elif a1 == b2: # Есть общая точка (первое условие)
print(a1)
elif a2 == b1: # Есть общая точка (второе условие)
print(a2)
else: # Осталось найти пересечение
if a1 > a2: # Выбираем большую из левых границ
a2 = a1
if b1 < b2: # Выбираем меньшую из правых границ
b2 = b1
print(a2, b2) # Выводим координаты точки пересечения (если она существует)
Если все решения правильны, то у вас должен быть допуск к следующему тесту на stepik по баллам.
a = int(input()) if 0<=a<37: if (0<a<11 or 18<a<29) and a%2 or (10<a<19 or 28<a<37) and a%2==0: print('красный') elif a == 0: print('зеленый') else: print('черный') else: print('ошибка ввода')
Andrey Verhoglyad
1 год назад
Спасибо большое!
Obebox
1 год назад
матрийи\\ци матрцици
NEO
1 год назад
Великий архитектор матрици помги мне
wpDiscuz
6
0
Оставьте комментарий! Напишите, что думаете по поводу статьи.x
Красавчег!
Я думаю, многим помог
Альтернативный вариант:
4.3. #11 Пересечение отрезков
a1 = int(input()) #brown
b1 = int(input())
a2 = int(input()) #green
b2 = int(input())
if (b1 == a2):
print(b1)
elif (b2 == a1):
print(b2)
elif (b1 < a2 or b2 < a1):
print("пустое множество")
else:
print(max(a1, a2), min(b1, b2))
4.3. #10 Цвета колеса рулетки
a = int(input())
if 0<=a<37:
if (0<a<11 or 18<a<29) and a%2 or (10<a<19 or 28<a<37) and a%2==0:
print('красный')
elif a == 0:
print('зеленый')
else:
print('черный')
else:
print('ошибка ввода')
Спасибо большое!
матрийи\\ци матрцици

Великий архитектор матрици помги мне