V tem programu se boste naučili najti vsoto naravnega števila z uporabo rekurzije v Kotlinu. To se naredi s pomočjo rekurzivne funkcije.
Pozitivna števila 1, 2, 3 … so znana kot naravna števila. Spodnji program od uporabnika vzame pozitivno celo število in izračuna vsoto do dane številke.
Vsoto naravnih števil lahko najdete tudi z zanko. Vendar se boste tega problema naučili reševati z uporabo rekurzije tukaj.
Primer: Vsota naravnih števil s pomočjo rekurzije
fun main(args: Array) ( val number = 20 val sum = addNumbers(number) println("Sum = $sum") ) fun addNumbers(num: Int): Int ( if (num != 0) return num + addNumbers(num - 1) else return num )
Ko zaženete program, bo rezultat:
Vsota = 210
Številka, katere vsoto najdemo, je shranjena v spremenljivi številki.
Sprva addNumbers()
se main()
funkcija pokliče iz funkcije, ki je bila 20 podana kot argument.
Številka (20) se doda rezultatu addNumbers(19)
.
V naslednjem klicu funkcije od addNumbers()
do addNumbers()
se posreduje 19, ki se doda rezultatu addNumbers(18)
. Ta postopek se nadaljuje, dokler num ni enak 0.
Ko je num enako 0, ni rekurzivnega klica in to vrne vsoto celih števil v main()
funkcijo.
Tu je enakovredna Java koda: Java program za iskanje vsote naravnih števil z uporabo rekurzije