Јава програм за проналажење фактора броја помоћу рекурзије

У овом програму ћете научити да пронађете и прикажете факторијел броја користећи рекурзивну функцију у Јави.

Да бисте разумели овај пример, требало би да имате знање о следећим темама програмирања Јава:

  • Јава методе
  • Јава Рецурсион

Факторијал позитивног броја н дат је са:

 факторијел од н (н!) = 1 * 2 * 3 * 4 * … * н

Факторијал негативног броја не постоји. А фактор 0 је 1.

У овом примеру ћете научити да проналазите факторијел броја користећи рекурзију. Посетите ову страницу да бисте сазнали како можете пронаћи факторијел броја помоћу петље.

Пример: Факторијал броја који користи рекурзију

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

Оутпут

 Факторијал од 6 = 720

У почетку multiplyNumbers()се main()функција позива са функцијом 6 која је прослеђена као аргумент.

С обзиром да је 6 веће или једнако 1, 6 се множи до резултата multiplyNumbers()где се прослеђује 5 (број -1). Пошто се позива из исте функције, то је рекурзивни позив.

У сваком рекурзивном позиву, вредност аргумента нум се смањује за 1 док нум не достигне мање од 1.

Када је вредност нум мања од 1, нема рекурзивног позива.

И сваки рекурзивни позив се враћа дајући нам:

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

Занимљиви Чланци...