Слайд 2
🧮 Решение задач
📘 Задача 1. Длина гипотенузы
Напишите функцию, которая возвращает длину гипотенузы прямоугольного треугольника по известным значениям его катетов.
По теореме Пифагора: c² = a² + b² ⇒ c = √(a² + b²)
def compute_hypotenuse(a, b):
c = (a ** 2 + b ** 2) ** 0.5
return c
print(compute_hypotenuse(3, 4))
print(compute_hypotenuse(5, 12))
print(compute_hypotenuse(1, 1))
Результат:
5.0
13.0
1.4142135623730951
Можно также вводить данные с клавиатуры:
x = int(input())
y = int(input())
hypotenuse = compute_hypotenuse(x, y)
print(hypotenuse)
💡 В модуле
math есть функция math.hypot(x, y),
которая возвращает длину гипотенузы по катетам x и y.
📗 Задача 2. Расстояние между точками
Напишите функцию get_distance(x1, y1, x2, y2),
вычисляющую расстояние между двумя точками на плоскости.
Формула расстояния:
ρ = √((x1 - x2)² + (y1 - y2)²)
Реализация:
def get_distance(x1, y1, x2, y2):
return compute_hypotenuse(x1 - x2, y1 - y2)
Основная программа:
x1, y1 = float(input()), float(input())
x2, y2 = float(input()), float(input())
print(get_distance(x1, y1, x2, y2))
💡 Для вычисления расстояния используется уже готовая функция
compute_hypotenuse().
Это пример повторного использования кода.
📙 Задача 3. Сумма цифр числа
Напишите функцию sum_digits(n), которая принимает
натуральное число и возвращает сумму его цифр.
def sum_digits(n):
result = 0
while n > 0:
result += n % 10
n //= 10
return result
n = int(input())
print(sum_digits(n))
💡 Каждый шаг цикла извлекает последнюю цифру с помощью
n % 10
и сокращает число на одну цифру делением // 10.
📒 Задача 4. Среднее значение элементов списка
Напишите функцию compute_average(numbers), которая принимает список чисел
и возвращает среднее значение элементов.
def compute_average(numbers):
return sum(numbers) / len(numbers)
numbers = [1, 3, 5, 1, 6, 8, 10, 2]
print(compute_average(numbers))
Результат:
4.5
💡 Среднее значение вычисляется как сумма элементов, делённая на их количество.
Используются встроенные функции
sum() и len().