Dans ce programme, vous apprendrez à inverser une phrase donnée en utilisant une boucle récursive dans Kotlin.
Exemple: inverser une phrase à l'aide de la récursivité
fun main(args: Array) ( val sentence = "Go work" val reversed = reverse(sentence) println("The reversed sentence is: $reversed") ) fun reverse(sentence: String): String ( if (sentence.isEmpty()) return sentence return reverse(sentence.substring(1)) + sentence(0) )
Lorsque vous exécutez le programme, la sortie sera:
La phrase inversée est: krow oG
Dans le programme ci-dessus, nous avons une fonction récursive reverse().
À chaque itération, nous ajoutons (concaténons) le résultat de la reverse()fonction suivante au premier caractère de la phrase en utilisant charAt(0).
L'appel récursif doit être avant le charAt(), car de cette façon, les derniers caractères commenceront à s'ajouter sur le côté gauche. Si vous inversez l'ordre, vous vous retrouverez avec la phrase originale.
À la fin, nous nous retrouvons avec une phrase vide et reverse()retourne la phrase inversée.
| Itération | sens inverse() | sous-chaîne () | reverseString |
|---|---|---|---|
| 1 | inverser ("Allez travailler") | "o Travail" | résultat + "G" |
| 2 | inverser ("o Travail" | " Travail" | résultat + "o" + "G" |
| 3 | inverser ("Travail") | "Travail" | résultat + "" + "o" + "G" |
| 4 | inverser ("Travail") | "ork" | résultat + "W" + "" + "o" + "G" |
| 5 | inverse ("ork") | "rk" | résultat + "o" + "W" + "" + "o" + "G" |
| 6 | inverse ("rk") | "k" | résultat + "r" + "o" + "W" + "" + "o" + "G" |
| sept | inverse ("k") | "" | résultat + "k" + "r" + "o" + "W" + "" + "o" + "G" |
| Final | sens inverse("") | - | "" + "k" + "r" + "o" + "W" + "" + "o" + "G" = "kroW oG" |
Voici le code Java équivalent: Programme Java pour inverser une phrase








