Я пытаюсь сделать программу, которая вычисляет двойные факториалы (пример - n = 3, => (3!)! = 6! = 720), но у меня есть некоторые проблемы с рекурсивным дном и У меня есть исключение переполнения стека.Исключение переполнения стека с рекурсией
public static long df(long n) {
if (n == 1) {
return 1;
} else {
return df(n * df(n - 1));
}
}
public static void main(String[] args) {
System.out.println(df(3));
}
Пожалуйста, прочтите мой вопрос и пример. – NoSuchUserException
Решение, которое вы предлагаете, вычисляет факторный рекурсивно - 3! = 6. Но я пытаюсь вычислить это (3!)! = 6! = 720. Я пытаюсь вычислить факториал дважды рекурсивно. – NoSuchUserException
@NoSuchUserException Не похоже, что есть хороший способ сделать это с помощью одного метода, но просто используя 'df (df (input))' должен дать вам то, что вы хотите – phflack