public class AckermannFunction {
public static int ackermann(int m, int n) {
if (m == 0) {
return n + 1;
}
if (n == 0) {
return ackermann(m - 1, 1);
}
return ackermann(m - 1, ackermann(m, n - 1));
}
public static int main() {
System.out.println(ackermann(0, 0));
System.out.println(ackermann(0, 5));
System.out.println(ackermann(1, 0));
System.out.println(ackermann(1, 5));
System.out.println(ackermann(2, 0));
System.out.println(ackermann(2, 5));
System.out.println(ackermann(3, 0));
return 0;
}
}