„Kotlin“ programa, skirta surasti faktoriaus skaičių naudojant rekursiją

Šioje programoje išmoksite rasti ir parodyti skaičiaus faktorialą naudodamiesi rekursine Kotlino funkcija.

Teigiamo skaičiaus n faktorą pateikia:

 faktorius n (n!) = 1 * 2 * 3 * 4 *… * n

Neigiamo skaičiaus faktorialas neegzistuoja. 0 faktorius yra 1.

Šiame pavyzdyje išmoksite rasti skaičiaus faktorialą naudodami rekursiją. Apsilankykite šiame puslapyje, kad sužinotumėte, kaip galite rasti skaičiaus faktorialą naudodami kilpą.

Pavyzdys: Skaičiaus faktorius naudojant rekursiją

 fun main(args: Array) ( val num = 6 val factorial = multiplyNumbers(num) println("Factorial of $num = $factorial") ) fun multiplyNumbers(num: Int): Long ( if (num>= 1) return num * multiplyNumbers(num - 1) else return 1 )

Kai paleisite programą, išvestis bus:

 Faktorinis koeficientas 6 = 720

Iš pradžių multiplyNumbers()tai iškviečiama iš main()funkcijos, kai argumentas perduodamas 6.

Kadangi 6 yra didesnis arba lygus 1, 6 padauginamas iš rezultato, multiplyNumbers()kur praeina 5 (num -1). Kadangi jis iškviečiamas iš tos pačios funkcijos, tai yra rekursinis skambutis.

Kiekviename rekursiniame kvietime argumento num vertė sumažinama 1, kol num pasiekia mažiau nei 1.

Kai num reikšmė yra mažesnė nei 1, rekursinio skambučio nėra.

Kiekvienas rekurzinis skambutis grąžina mums:

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

Čia yra lygiavertis „Java“ kodas: „Java“ programa faktoriatui rasti naudojant rekursiją

Įdomios straipsniai...