English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
In questo programma, imparerai a utilizzare la funzione ricorsiva in Java per trovare e visualizzare il fattoriale di un numero.
Il fattoriale di un numero positivo n è dato da:
fattoriale di n (n!) = 1 * 2 * 3 * 4 * ... * n
Non esiste fattoriale per i numeri negativi. Il fattoriale di 0 è 1.
In questo esempio, imparerai a utilizzare la ricorsione per trovare il fattoriale di un numero. Visita questa pagina per sapere comeCalcolo del fattoriale del numero utilizzando il ciclo。
public class Factorial { public static void main(String[] args) { int num = 6; long factorial = multiplyNumbers(num); System.out.println("" + num + "的阶乘 = " + factorial); } public static long multiplyNumbers(int num) { if (num >= 1) return num * multiplyNumbers(num - 1); else return 1; } }
Quando si esegue il programma, l'output è:
Fattoriale di 6 = 720
All'inizio, viene chiamata multiplyNumbers() dalla funzione main() e viene passato come parametro 6.
Poiché 6 è maggiore o uguale a 1, 6 viene moltiplicato per il risultato di multiplyNumbers(), al quale viene passato 5 (num - 1). Poiché è una chiamata da stessa funzione, è una chiamata ricorsiva.
In ogni chiamata ricorsiva, il valore del parametro num viene ridotto di 1 fino a quando num è minore di 1.
Quando il valore num è minore di 1, non ci saranno chiamate ricorsive.
Ogni chiamata ricorsiva ci restituisce:
6 * 5 * 4 * 3 * 2 * 1 * 1 (per 0) = 720