Большинство функций, которые мы использовали до сих пор, зависят от параметров, которые мы им передаем. print() выводит переданные ей переменные, max() вычисляет максимум из переданных ей чисел, math.sqrt() вычисляет квадратный корень из переданного ей числа. Таким образом, функции меняют свое поведение в зависимости от переданного им значения. Они не повторяют один и тот же набор действий, как функция в предыдущем упражнении.
Чтобы иметь возможность изменять поведение на основе параметров, нам нужно передавать параметры функции. Это можно сделать, определив аргументы, которые функция может принимать, внутри круглых скобок ().
def print_volume(h, w, d):
volume = h * w * d
print(volume)
print_volume(2, 3, 4) # 24
print_volume(2, 0, 4) # 0
print_volume(1, 10, 24) # 240
Функция может иметь столько аргументов, сколько необходимо. Они должны иметь осмысленные имена и разделяться запятыми.
Задание
Напишите функцию, которая будет вычислять объем цилиндра и выводить его.
Напомним, что объем цилиндра вычисляют, умножая площадь основания круга на высоту: $$V = \pi r^2 h$$
Первая строка ввода содержит целое число n — количество цилиндров, для которых нужно рассчитать объем. Следующие n строк содержат два целых числа h и r. Это высота и радиус цилиндра.
Вызовите созданную вами функцию для каждого цилиндра так, чтобы вывод программы содержал n объемов.
Ввод
Вывод
115
6
1696.46
Подсказка
При именовании параметров функции хорошей практикой является использование имен, которые не совпадают с другими именами в коде. Поэтому, если у вас есть h = int(input()), вы можете назвать параметр функции, например, height.