Šajā programmā jūs iemācīsities aprēķināt skaitļa jaudu, izmantojot Kotlinas rekursīvo funkciju.
Piemērs: Programma jaudas aprēķināšanai, izmantojot rekursiju
fun main(args: Array) ( val base = 3 val powerRaised = 4 val result = power(base, powerRaised) println("$base^$powerRaised = $result") ) fun power(base: Int, powerRaised: Int): Int ( if (powerRaised != 0) return base * power(base, powerRaised - 1) else return 1 )
Palaidot programmu, izeja būs:
3 4 = 81
Iepriekš minētajā programmā jūs aprēķināt jaudu, izmantojot rekursīvo funkciju jaudu ().
Vienkārši sakot, rekursīvā funkcija reizina bāzi ar sevi, lai palielinātu laiku, kas ir:
3 * 3 * 3 * 3 = 81Izpildes soļi
Atkārtojums | jauda () | jauda paaugstināta | rezultāts |
---|---|---|---|
1 | jauda (3, 4) | 4 | 3 * rezultāts 2 |
2 | jauda (3, 3) | 3 | 3 * 3 * rezultāts 3 |
3 | jauda (3, 2) | 2 | 3 * 3 * 3 * rezultāts 4 |
4 | jauda (3, 1) | 1 | 3 * 3 * 3 * 3 * rezultātu fināls |
Fināls | jauda (3, 0) | 0 | 3 * 3 * 3 * 3 * 1 = 81 |
Šeit ir ekvivalents Java kods: Java programma jaudas aprēķināšanai, izmantojot rekursiju