Степень числа
Back Home Up Next

адача 3. Пусть a - вещественное число отличное от нуля и n - целое неотрицательное число. Составить рекурсивную программу-функцию, возвращающую величину an.

Решение. Приведенная ниже функция power(a,n) дает решение задачи за n рекурсивных вызовов:

Уменьшить количество вызовов можно так. Организуем декомпозицию иначе, представив величину an в виде:

Отсюда сразу же получаем алгоритм вычисления an, требующий не более чем log2(n) рекурсивных вызовов. Реализуется он функцией pow(a,n):

Функция powe(n) также вычисляет an не более чем за log2(n) рекурсивных вызовов:

Home Содержание Схемы ООД Доска объявлений Поиск