Хорошо, во-первых, вам нужно знать, что такое факториал.
n!= n * (n-1)!
Это важно понимать.Факториал, если 5 в 5 раз больше факториала 4. Это на самом деле круто и очень полезно.Таким образом, вы можете написать функцию, которая делает это.
long factorial(long n) {
if (n == 1) {
return 1;
}
return n * factorial(n-1);
}
Итак, вы определяете метод, аналогичный описанному выше.И затем в вашем цикле, где вы просите их ввести номер, вы вызываете этот метод.Он вызывает себя по мере необходимости, чтобы сделать расчет за вас.
Есть и другие способы.Вы можете сделать цикл for.
long result = 0;
for (long val = 2; val <= n; ++val) {
result = result * val;
}
Но рекурсивный метод довольно крутой.