Java program a szám tényezőjének megtalálásához a rekurzió segítségével

Ebben a programban megtanulja megtalálni és megjeleníteni egy szám faktoriálját a Java rekurzív függvényével.

A példa megértéséhez ismernie kell a következő Java programozási témákat:

  • Java módszerek
  • Java rekurzió

Az n pozitív szám tényezőjét a következő adja meg:

 n (n!) = 1 * 2 * 3 * 4 *… * n tényező

A negatív szám tényezője nem létezik. A 0 faktoriális értéke 1.

Ebben a példában megtanulja megtalálni a szám faktoriáját a rekurzió segítségével. Látogasson el erre az oldalra, hogy megtudja, hogyan találhatja meg a szám tényezőjét a hurok segítségével.

Példa: Rekurziót használó szám tényezője

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

Kimenet

 6-os tényező = 720

Kezdetben multiplyNumbers()a main()függvényből hívják meg, argumentumként 6- at adva át.

Mivel a 6 nagyobb vagy egyenlő 1-vel, a 6-ot megszorozzuk az multiplyNumbers()5 (num -1) átadásának eredményével . Mivel ugyanabból a funkcióból hívják, rekurzív hívásról van szó.

Minden rekurzív hívás során a num argumentum értéke 1-vel csökken, amíg a num el nem éri az 1-t.

Ha a num értéke kisebb, mint 1, nincs rekurzív hívás.

És minden rekurzív hívás visszaadja:

 6 * 5 * 4 * 3 * 2 * 1 * 1 (0 esetén) = 720

érdekes cikkek...