JavaScript: Функция Аккермана

Обновлено: 02 сент., 23:20
3871
Студент
93%
Завершения

Функция Аккермана — простой пример вычислимой функции, которая не является примитивно рекурсивной.

Она обозначается A(m,n), принимает два неотрицательных целых числа в качестве параметров и возвращает натуральное число. Эта функция растёт очень быстро, например, число A(4,4) настолько велико, что количество цифр в порядке этого числа многократно превосходит количество атомов в наблюдаемой части Вселенной.

Функция Аккермана определяется рекурсивно для неотрицательных целых чисел m и n следующим образом:

Akkerman

Справа в формуле указаны условия при которых выполняются расчёты.

solution.js

Реализуйте и экспортируйте по умолчанию функцию Аккермана.

Примеры использования:

import ackermann from './solution';

ackermann(0, 0); // 1
ackermann(2, 1); // 5
ackermann(2, 3); // 9

Для полного доступа к испытанию нужен базовый план

Базовый план откроет полный доступ ко всем курсам, упражнениям и урокам Хекслета, проектам и пожизненный доступ к теории пройденных уроков. Подписку можно отменить в любой момент.

Получить доступ
1000
упражнений
2000+
часов теории
3200
тестов

Отзывы

Аватар пользователя Йоси Адлер
Йоси Адлер 24 февраля 2017

Откладывал решение этого задания до последнего из-за страшной на вид математической формулы, фигурирующей в условии. В реальности, рабочее решение накатал ровно за 6 минут))) Спасибо большое за такие интересные и, временами, очень непростые практические задания! Было круто! Теперь можно двигаться дальше.