Форум программистов, компьютерный форум, киберфорум
Наши страницы
Turbo Pascal
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.75/4: Рейтинг темы: голосов - 4, средняя оценка - 4.75
Vlad9599
0 / 0 / 0
Регистрация: 09.10.2017
Сообщений: 7
1

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

16.10.2017, 18:05. Просмотров 725. Ответов 1
Метки нет (Все метки)

Даны неотрицательные целые числа n и m. Вычислить функцию A(n, m) вида:

Код
          {m+1, если n=0;
A(n, m) = {A(n-1, 1), если n<>0, m=0;
          {A(n-1, A(n, m-1)), если n>0, m>0.
0
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
16.10.2017, 18:05
Ответы с готовыми решениями:

Функция Аккермана
Помогите написать на языке программирования Си &quot;Функция Аккермана&quot;. Дано...

Функция Аккермана
Функция Аккермана A(m,n) определена следующим образом n+1 | ...

Рекурсия: функция Аккермана
задач с использованием рекурсии Написать рекурсивную формулу для вычисления...

Вычисление функции Аккермана итерационно
Помогите пожалуйста написать программу для вычисления функции акермана, не...

Рекурсивное вычисление функции Аккермана
Помогите пожалуйста написать прогу... На языке программирования Pascal...

1
Cyborg Drone
Модератор
5398 / 3202 / 2450
Регистрация: 17.08.2012
Сообщений: 10,274
19.10.2017, 01:16 2
Лучший ответ Сообщение было отмечено ZX Spectrum-128 как решение

Решение

Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
function a(n, m: longint): longint;
begin
  if n = 0
    then a := m + 1
    else if m = 0
      then a := a(n - 1, 1)
      else a := a(n - 1, a(n, m - 1))
end;
 
var n, m: longint;
begin
  repeat
    write('n >= 0;  n = ');
    readln(n)
  until n >=0;
  repeat
    write('m >= 0;  m = ');
    readln(m)
  until m >=0;
  write('A(', n, ', ', m, ') = ', a(n, m));
  readln
end.
Не вводите слишком большие числа, функция Аккермана растёт очень быстро.
Навскидку, чтобы не было целочисленного переполнения и переполнения стека,
для n < 3 значение m не должно превышать 1000000,
для n = 3 значение m не должно превышать 24,
для n = 4 значение m не должно превышать 0.
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
19.10.2017, 01:16

функция Аккермана
Помогите пожалуйста написать программу: Составить два варианта программы с...

Функция Аккермана
Разработать рекурсивную функцию нахождения значения функции Аккермана, которая...

Рекурсия: вычислить значение функции Аккермана
Даны неотрицательные целые числа n,m; используя рекурсивную подпрограмму,...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru