3. Функция для поиска максимального числа
Условие задачи:
Написать функцию, которая находит и возвращает самое большое число среди переданных значений.
Спойлеры к решению
Подсказки
- Нужно написать функцию, которая принимает произвольное количество чисел.
- Для этого удобно использовать
*args. - Если числа не переданы, можно вернуть
Noneили выбросить ошибку. - Самое простое решение — использовать встроенную функцию
max(). - Если нужно показать алгоритм вручную, можно пройтись циклом по всем числам и хранить текущий максимум.
Решение
def find_max(*numbers: int) -> int | None:
if not numbers:
return None
max_number = numbers[0]
for number in numbers:
if number > max_number:
max_number = number
return max_number
Пример использования:
print(find_max(1, 5, 3, 10, 2)) # 10
print(find_max(-5, -1, -10)) # -1
print(find_max()) # None
Функция принимает любое количество чисел через *numbers. Сначала максимальным считается первый элемент, затем функция проходит по остальным значениям и обновляет максимум, если находит число больше текущего.