Показываю разборы с ответами и решениями урока 1.12 (Задачи по материалам недели) для курса «Программирование на Python». Предыдущий модуль 1.11 следующий модуль 2.1
В то далёкое время, когда Паша ходил в школу, ему очень не нравилась формула Герона для вычисления площади треугольника, так как казалась слишком сложной. В один прекрасный момент Павел решил избавить всех школьников от страданий и написать и распространить по школам программу, вычисляющую площадь треугольника по трём сторонам.
Одна проблема: так как эта формула не нравилась Павлу, он её не запомнил. Помогите ему завершить доброе дело и напишите программу, вычисляющую площадь треугольника по переданным длинам трёх его сторон по формуле Герона:
a, b, c = int(input()), int(input()), int(input())
p = (a + b + c) / 2
s = (p * (p - a) * (p - b) * (p - c)) ** 0.5
print(s)
Напишите программу, принимающую на вход целое число, которая выводит True, если переданное значение попадает в интервал (-15, 12] \cup (14, 17) \cup [19, +\infty)(−15,12]∪(14,17)∪[19,+∞) и False в противном случае (регистр символов имеет значение).
A=int(input())
if (-15 < A <= 12) or (14 < A < 17) or (19 <= A) :
print('True')
else:
print('False')
Напишите простой калькулятор, который считывает с пользовательского ввода три строки: первое число, второе число и операцию, после чего применяет операцию к введённым числам («первое число» «операция» «второе число») и выводит результат на экран.
Поддерживаемые операции: +, —, /, *, mod, pow, div, где mod — это взятие остатка от деления, pow — возведение в степень, div — целочисленное деление.
Если выполняется деление и второе число равно 0, необходимо выводить строку «Деление на 0!».
x, y, s = float(input()), float(input()), input()
try:
if s == '+': print(x + y)
elif s == '-': print(x - y)
elif s == '/': print(x / y)
elif s == "*": print(x * y)
elif s == 'mod': print(x % y)
elif s == 'pow': print(x**y)
elif s == 'div': print(x // y)
except ZeroDivisionError:
print("Деление на 0!")
Жители страны Малевии часто экспериментируют с планировкой комнат. Комнаты бывают треугольные, прямоугольные и круглые. Чтобы быстро вычислять жилплощадь, требуется написать программу, на вход которой подаётся тип фигуры комнаты и соответствующие параметры, которая бы выводила площадь получившейся комнаты.
Для числа π в стране Малевии используют значение 3.14.
figure = input()
S = 0
if figure == ('треугольник'):
a, b, c = int(input()), int(input()), int(input())
p = ((a + b + c) / 2)
S = ((p * (p - a) * (p - b) * (p - c)) ** 0.5)
elif figure == ('круг'):
r = int(input())
S = 3.14 * (r ** 2)
elif figure == ('прямоугольник'):
a, b = int(input()), int(input())
S = (a * b)
print(S)
Напишите программу, которая получает на вход три целых числа, по одному числу в строке, и выводит на консоль в три строки сначала максимальное, потом минимальное, после чего оставшееся число.
В институте биоинформатики по офису передвигается робот. Недавно студенты из группы программистов написали для него программу, по которой робот, когда заходит в комнату, считает количество программистов в ней и произносит его вслух: «n программистов».
Для того, чтобы это звучало правильно, для каждого nn нужно использовать верное окончание слова.
Напишите программу, считывающую с пользовательского ввода целое число nn (неотрицательное), выводящее это число в консоль вместе с правильным образом изменённым словом «программист», для того, чтобы робот мог нормально общаться с людьми, например: 1 программист, 2 программиста, 5 программистов.
В комнате может быть очень много программистов. Проверьте, что ваша программа правильно обработает все случаи, как минимум до 1000 человек.
s = int (input())
n1 =" программистов"
n2 =" программист"
n3 =" программиста"
if s>=0:
if s==0:
print(str(s) + n1)
elif s%100>=10 and s%100<=20:
print(str(s) + n1)
elif s%10==1:
print(str(s) + n2)
elif s%10>=2 and s%10<=4:
print(str(s) + n3)
else:
print(str(s) + n1)
Паша очень любит кататься на общественном транспорте, а получая билет, сразу проверяет, счастливый ли ему попался. Билет считается счастливым, если сумма первых трех цифр совпадает с суммой последних трех цифр номера билета.
Однако Паша очень плохо считает в уме, поэтому попросил вас написать программу, которая проверит равенство сумм и выведет «Счастливый», если суммы совпадают, и «Обычный», если суммы различны.
На вход программе подаётся строка из шести цифр.
Выводить нужно только слово «Счастливый» или «Обычный», с большой буквы.