Java-program for å finne fakta av et tall ved hjelp av rekursjon

I dette programmet lærer du å finne og vise et tallfaktor ved hjelp av en rekursiv funksjon i Java.

For å forstå dette eksemplet, bør du ha kunnskap om følgende Java-programmeringsemner:

  • Java-metoder
  • Java-rekursjon

Faktoren til et positivt tall n er gitt av:

 fabrikk av n (n!) = 1 * 2 * 3 * 4 * … * n

Faktoriet om et negativt tall eksisterer ikke. Og faktoren på 0 er 1.

Du vil lære å finne et tallfaktor ved hjelp av rekursjon i dette eksemplet. Besøk denne siden for å lære hvordan du kan finne et tall som bruker et nummer ved hjelp av loop.

Eksempel: Faktor av et tall ved bruk av rekursjon

 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; ) )

Produksjon

 Faktor av 6 = 720

Opprinnelig multiplyNumbers()kalles det fra main()funksjonen med 6 bestått som argument.

Siden 6 er større enn eller lik 1, multipliseres 6 med resultatet multiplyNumbers()der 5 (num -1) sendes. Siden det kalles fra samme funksjon, er det et rekursivt anrop.

I hvert rekursivt anrop reduseres verdien av argumentet num med 1 til num når mindre enn 1.

Når verdien på num er mindre enn 1, er det ingen rekursiv samtale.

Og hver rekursive samtale returnerer og gir oss:

 6 * 5 * 4 * 3 * 2 * 1 * 1 (for 0) = 720

Interessante artikler...