In questo programma imparerai a trovare e visualizzare il fattoriale di un numero utilizzando una funzione ricorsiva in Java.
Per comprendere questo esempio, è necessario conoscere i seguenti argomenti di programmazione Java:
- Metodi Java
- Ricorsione Java
Il fattoriale di un numero positivo n è dato da:
fattoriale di n (n!) = 1 * 2 * 3 * 4 *… * n
Il fattoriale di un numero negativo non esiste. E il fattoriale di 0 è 1.
Imparerai a trovare il fattoriale di un numero usando la ricorsione in questo esempio. Visita questa pagina per scoprire come trovare il fattoriale di un numero usando il loop.
Esempio: fattoriale di un numero utilizzando la ricorsione
public class Factorial ( public static void main(String() args) ( int num = 6; long factorial = multiplyNumbers(num); System.out.println("Factorial of " + num + " = " + factorial); ) public static long multiplyNumbers(int num) ( if (num>= 1) return num * multiplyNumbers(num - 1); else return 1; ) )
Produzione
Fattoriale di 6 = 720
Inizialmente, multiplyNumbers()
viene chiamato dalla main()
funzione con 6 passato come argomento.
Poiché 6 è maggiore o uguale a 1, 6 viene moltiplicato per il risultato in multiplyNumbers()
cui viene passato 5 (num -1). Poiché viene chiamato dalla stessa funzione, è una chiamata ricorsiva.
In ogni chiamata ricorsiva, il valore dell'argomento num viene diminuito di 1 finché num non raggiunge meno di 1.
Quando il valore di num è minore di 1, non è presente alcuna chiamata ricorsiva.
E ogni chiamata ricorsiva restituisce dandoci:
6 * 5 * 4 * 3 * 2 * 1 * 1 (per 0) = 720