I dette programmet lærer du å beregne kraften til et tall ved hjelp av en rekursiv funksjon i Kotlin.
Eksempel: Program for å beregne effekt ved hjelp av rekursjon
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 )
Når du kjører programmet, vil utdataene være:
3 4 = 81
I programmet ovenfor beregner du effekten ved hjelp av en rekursiv funksjonseffekt ().
Enkelt sagt multipliserer den rekursive funksjonen basen med seg selv for powerRaised times, som er:
3 * 3 * 3 * 3 = 81Gjennomføringstrinn
Iterasjon | makt() | powerRised | resultat |
---|---|---|---|
1 | kraft (3, 4) | 4 | 3 * resultat 2 |
2 | kraft (3, 3) | 3 | 3 * 3 * resultat 3 |
3 | strøm (3, 2) | 2 | 3 * 3 * 3 * resultat 4 |
4 | strøm (3, 1) | 1 | 3 * 3 * 3 * 3 * finale |
Endelig | strøm (3, 0) | 0 | 3 * 3 * 3 * 3 * 1 = 81 |
Her er ekvivalent Java-kode: Java-program for å beregne kraft ved hjelp av rekursjon