Предмет: Информатика, автор: 5xenr

Помогите решить задачу на Питоне, Рекурсия

Приложения:

Ответы

Автор ответа: uplmtq
0

Ответ:

def pow(a, n):

   if n == 0:

       return 1

   elif n % 2 == 0:

       return pow(a * a, n / 2)

   elif n % 2 != 0:

       return a * pow(a, n - 1)

a = float(input())

n = int(input())

print(pow(a, n))

Объяснение:

Если нет ограничений по времени, то elif можно заменить на if

def pow(a, n):  // Функция pow с аргументами a, n

   if n == 0:  // Если значение переменной n = 0

       return 1  // Возвращаем единицу

   elif n % 2 == 0:  // Если n - четное число

       return pow(a * a, n / 2)  // Реализация формулы + рекурсия

   elif n % 2 != 0:  // Если n - нечетное число

       return a * pow(a, n - 1)  // Реализация формулы + рекурсия

a = float(input())  // Ввод вещественной переменной а

n = int(input())  // Ввод целочисленной переменной n

print(pow(a, n)) // Вызов + вывод функции pow с аргументами а и n


uplmtq: Почему отмечено? :\
Похожие вопросы
Предмет: Қазақ тiлi, автор: Fatima220212
Предмет: Українська мова, автор: vita24
Предмет: Математика, автор: кот1238