Функция рекурсивного возведения в степень
Приветствую! Меня зовут Алекс и сегодня я расскажу о функции, которая позволяет возвести число в целую степень с использованием рекурсии. Эта функция будет принимать два числа a и b, где а – число, которое нужно возвести в степень, а b – степень, в которую нужно возвести число. Функция будет возвращать результат возведения числа a в степень b. Давайте начнем!
python
def f(a, b)⁚
if b 0⁚
return 1
elif b < 0⁚
return 1 / f(a, -b)
else⁚
return a * f(a, b ─ 1)
Давайте разберемся с этой функцией по шагам.
- В условии, если значение степени b равно 0, мы возвращаем 1, так как любое число в степени 0 равно 1.
- Если значение степени b отрицательное, мы используем рекурсию для того, чтобы возвести число a в степень -b. Затем возвращаем итоговое значение, обратное полученному результату.
- В противном случае мы умножаем число a на результат функции f, вызванной для числа a и степени b-1, то есть, на число, уменьшенное на 1.
Давайте рассмотрим примеры использования этой функции⁚
python
print(f(2٫ 3)) # Результат⁚ 8
print(f(5, 2)) # Результат⁚ 25
print(f(10, -2)) # Результат⁚ 0.01
Эти примеры демонстрируют работу функции f. Мы успешно возвели число 2 в степень 3 и получили результат, равный 8. Затем мы возведем число 5 в степень 2 и получаем 25.
Последний пример иллюстрирует работу при отрицательной степени, где мы возвели число 10 в степень -2 и получили результат, равный 0.01.