V tomto programu se naučíte vypočítat sílu čísla pomocí rekurzivní funkce v Kotlin.
Příklad: Program pro výpočet výkonu pomocí rekurze
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 )
Když spustíte program, výstup bude:
3 4 = 81
Ve výše uvedeném programu vypočítáte výkon pomocí rekurzivní funkce power ().
Jednoduše řečeno, rekurzivní funkce znásobuje základnu sama se sebou pro powerRaised times, což je:
3 * 3 * 3 * 3 = 81Prováděcí kroky
Opakování | Napájení() | síla | výsledek |
---|---|---|---|
1 | síla (3, 4) | 4 | 3 * výsledek 2 |
2 | síla (3, 3) | 3 | 3 * 3 * výsledek 3 |
3 | síla (3, 2) | 2 | 3 * 3 * 3 * výsledek 4 |
4 | síla (3, 1) | 1 | 3 * 3 * 3 * 3 * výsledek konečný |
Finále | síla (3, 0) | 0 | 3 * 3 * 3 * 3 * 1 = 81 |
Zde je ekvivalentní kód Java: Program Java pro výpočet výkonu pomocí rekurze