#include <iostream>
using namespace std;
int A(int m, int n);
int n, m, P;
int main()
{
do{
cout<<"Escriba el valor entero no negativo de la variable m: ";
cin>>m;
if(n<0){
cout<<"Número inválido!";
return 0;
}
}while(n<0);
do{
cout<<"Escriba el valor entero no negativo de la variable n: ";
cin>>n;
if(m<0){
cout<<"Número inválido!";
return 0;
}
}while(m<0);
cout<<"El valor de Ackerman es: "<<A(m, n);
return 0;
}
int A(int m, int n)
{
if(m==0)
return n+1;
else if(m>0 && n==0)
return A(m-1, 1);
else if(m>0 && n>0)
return A(m-1, A(m, n-1));
}