Занятие 8. Функции и рекурсия

Задача «Возведение в степень»


Условие

Дано действительное положительное число a и целое неотрицательное число n. Вычислите an не используя циклы, возведение в степень через ** и функцию math.pow(), а используя рекуррентное соотношение an=a⋅an-1.

Решение оформите в виде функции power(a, n).


Тесты

Входные данные Правильный ответ Что вывела программа Результат
2
3
8
2
2
4
2
1
2
2
4
16
2
5
32
2
6
64
2
7
128
2
8
256
2
9
512
2
10
1024
2
15
32768
2
0
1
3
1
3
3
2
9
3
3
27
3
4
81
3
5
243
3
10
59049
3
0
1
1.1414
2
1.30279
1.5
10
57.665

Нужна подсказка?

Подсказка 1

Следуем рекуррентной формуле и останавливаемся при нулевом показателе.

Подсказка 2

Для больших n оба варианта достигают предела глубины рекурсии Python; n=0 возвращает 1.