Форум программистов, компьютерный форум, киберфорум
Python для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.59/79: Рейтинг темы: голосов - 79, средняя оценка - 4.59
0 / 0 / 0
Регистрация: 23.10.2015
Сообщений: 94

Определить функцию Аккермана

08.12.2015, 19:06. Показов 16081. Ответов 9
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Ограничение по времени работы программы: 1 секунда
В теории вычислимости важную роль играет функция Аккермана A(m,n) от двух параметров (неотрицательных целых чисел), определенная следующим образом:
A(m,n)=n+1, при m=0,
A(m,n)=A(m−1,1), при m>0, n=0,
A(m,n)=A(m−1,A(m,n−1)), при m>0, n>0.
По данным m и n вычислите A(m,n).
ВХОДНЫЕ ДАННЫЕ

Программа получает на вход два целых неотрицательных числа m и n, записанных в отдельных строчках.
ВЫХОДНЫЕ ДАННЫЕ

Программа должна вывести значение A(m,n). Известно, что результат не превосходит 100000.

ПРИМЕР
ввод
3
2
вывод
29
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
08.12.2015, 19:06
Ответы с готовыми решениями:

Как написать функцию Аккермана?
Помогите пожалуйста : 1) написать реализацию функции Аккермана. правила 5.16. Запрещено создавать темы с множеством вопросов во...

Составить рекурсивную функцию, которая вычисляет функцию Аккермана по формуле
Составить рекурсивную функцию, которая вычисляет функцию Аккермана по формуле A(n,m)= m+1, (если n=0) A = A(n - 1, 1), (если n...

Вычислить функцию Аккермана
Подскожите где ошибка. Здесь надо найти функцию Аккермана. #include "stdafx.h" int main () { ...

9
Эксперт NIX
 Аватар для Marinero
2796 / 2039 / 682
Регистрация: 02.03.2015
Сообщений: 6,509
09.12.2015, 01:49
Python
1
2
3
4
5
6
7
def A(m,n):
    if m:
        if n:
            return A(m - 1, A(m, n - 1))
        else:
            return A(m - 1, 1)
    return n + 1
0
0 / 0 / 0
Регистрация: 23.10.2015
Сообщений: 94
09.12.2015, 17:13  [ТС]
проблема с вводом (3.4.3 (v3.4.3:9b73f1c3e601, Feb 24 2015, 22:43:06) [MSC v.1600 32 bit (Intel)]
Python Type "help", "copyright", "credits" or "license" for more information.
[evaluate untitled-6.py]
3
3
2
2
)
0
09.12.2015, 18:43

Не по теме:

За 30 или более вопросов только на этом формуме Вы не научились организовывать считывание данных?

0
09.12.2015, 19:30

Не по теме:

Marinero, а он больно учился чтоль? За него ему все решили. Вообще очень оборзевший чувак ИМХО.

0
05.01.2016, 16:34
 Комментарий модератора 
Поиск!
0
6 / 5 / 4
Регистрация: 14.01.2017
Сообщений: 294
04.06.2017, 16:15
А как в этом коде вывод сделать? С print-ом
Цитата Сообщение от Marinero Посмотреть сообщение
def A(m,n):
* * if m:
* * * * if n:
* * * * * * return A(m - 1, A(m, n - 1))
* * * * else:
* * * * * * return A(m - 1, 1)
* * return n + 1
у меня не работает почему-то
0
4 / 9 / 2
Регистрация: 05.10.2020
Сообщений: 51
05.11.2020, 19:41
Python
1
2
3
4
5
6
7
8
9
def A(m, n):
    z = []
    z.append([1,2,3,4,5,6,7,8,9,10,11])
    z.append([2,3,4,5,6,7,8,9,10,11,12])
    z.append([3,5,7,9,11,13,15,17,19,21,23])
    z.append([5,13,29,61,125,253,509,1021,2045,4093,8189])
    return z[m][n]
a,b = map(int, input().split())
print(A(a, b))
Ну а че) В Сириус.Курсах прошло если что)00))0))))
0
4 / 9 / 2
Регистрация: 05.10.2020
Сообщений: 51
04.04.2021, 14:45
Сейчас изучаю c++ и наткнулся на эту задачу, снова не мог решить. Когда увидел свой же ответ было смешно. Решил сейчас сам нормально.
c++
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#include <iostream>
using namespace std;
int A(int m, int n){
    if (m == 0) 
        return n+1;
    if (m > 0 && n == 0)    
        A(m-1, 1);
    if (m > 0 && n > 0) 
        A(m-1, A(m, n-1));
}
 
int main(){
    int m, n;
    cin >> m >> n;
    cout << A(m, n);
    return 0;
}
python
Python
1
2
3
4
5
6
7
8
9
10
def A(m, n):
    elif m == 0:
        return n+1
    elif m > 0 and n == 0:
        A(m-1, n)
    elif m > 0 and n > 0:
        A(m-1, A(m, n-1))
 
m, n = map(int, input().split())
print(A(m, n))
ps На питоне может не работать, тк переписывал без теста с с++
0
Эксперт Python
8851 / 4502 / 1864
Регистрация: 27.03.2020
Сообщений: 7,317
04.04.2021, 17:51
MaMush,
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
memo = {}
 
def akk(m, n):
    if not (m, n) in memo:
        if m == 0:
            res = n + 1
        if m>0 and n==0:
            res = akk(m-1,1)
        if m>0 and n>0:
            res = akk(m-1,akk(m,n-1))
        memo[(m, n)] = res
    return memo[(m, n)]
 
a, b = map(int,input().split())
print(akk(a,b))
Добавлено через 6 минут
akk(3, 15) - 0.5 сек
https://ideone.com/6rUX8J
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
04.04.2021, 17:51
Помогаю со студенческими работами здесь

Вычислить функцию Аккермана
9.1. Даны натуральное число n, действительные числа a1, a2, ..., an; b1, b2, ..., bn. Получить e = f2(a1, a2, ..., an) + f(b1, a2, ...,...

Написать функцию Аккермана
Нужна помощь в написании. Visual Prolog 7.5 Написать функцию Аккермана. Эта функция часто используется для оценки способности...

Вычислить функцию Аккермана
Даны неотрицательные целые числа n и m. Необходимо вычислить функцию Аккермана: A(m.n){ n+1, если m=0; A(m-1,1), если m&gt;0,n=0; ...

Найти рекурсивную функцию Аккермана
Подскажите где ошибка. Здесь надо найти рекурсивную функцию Аккермана. Вроде всё нормально, но результат не выводит! #include...

Вычислить функцию Аккермана, используя рекурсию
Здравствуйте. В программировании новичок. Сможете помочь с такой задачкой: C# Вычислить, используя рекурсию, функцию Аккермана: ...


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

Или воспользуйтесь поиском по форуму:
10
Ответ Создать тему
Новые блоги и статьи
Подстановка значения реквизита справочника в табличную часть документа
Maks 10.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: при выборе сотрудника (справочник Сотрудники) в ТЧ документа. . .
Очистка реквизитов документа при копировании
Maks 09.04.2026
Алгоритм из решения ниже применим как для типовых, так и для нетиповых документов на самых различных конфигурациях. Задача: при копировании документа очищать определенные реквизиты и табличную. . .
модель ЗдравоСохранения 8. Подготовка к разному выполнению заданий
anaschu 08.04.2026
https:/ / github. com/ shumilovas/ med2. git main ветка * содержимое блока дэлэй из старой модели теперь внутри зайца новой модели 8ATzM_2aurI
Блокировка документа от изменений, если он открыт у другого пользователя
Maks 08.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа, разработанного в конфигурации КА2. Задача: запретить редактирование документа, если он открыт у другого пользователя. / / . . .
Система безопасности+живучести для сервера-слоя интернета (сети). Двойная привязка.
Hrethgir 08.04.2026
Далее были размышления о системе безопасности. Сообщения с наклонным текстом - мои. А как нам будет можно проверить, что ссылка наша, а не подделана хулиганами, которая выбросит на другую ветку и. . .
Модель ЗдрввоСохранения 7: больше работников, больше ресурсов.
anaschu 08.04.2026
работников и заданий может быть сколько угодно, но настроено всё так, что используется пока что только 20% kYBz3eJf3jQ
Дальние перспективы сервера - слоя сети с космологическим дизайном интефейса карты и логики.
Hrethgir 07.04.2026
Дальнейшее ближайшее планирование вывело к размышлениям над дальними перспективами. И вот тут может быть даже будут нужны оценки специалистов, так как в дальних перспективах всё может очень сильно. . .
Горе от ума
kumehtar 07.04.2026
Эта мне ментальная установка, что вот прямо сейчас, мол, мне для полного счастья не хватает (нужное вписать), и когда я этого достигну - тогда и полный кайф. Одна из самых сильных ловушек на пути. . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru