Menu
Coddy logo textTech

Iterowanie po ciągach znaków P1

Część sekcji Podstawy ścieżki Kotlin w Coddy. Lekcja 76 z 93.

Podobnie jak listy, ciągi znaków można iterować znak po znaku za pomocą pętli for. W Kotlinie ciąg znaków to w zasadzie sekwencja znaków, więc można zastosować ten sam wzorzec iteracji.

val word = "Hello"
for (char in word) {
    println(char)
}
// Wynik:
// H
// e
// l
// l
// o

Każda iteracja daje Ci pojedynczy Char z ciągu znaków. Jest to przydatne, gdy musisz sprawdzić lub przetworzyć każdy znak osobno, na przykład policzyć określone litery lub utworzyć nowy ciąg znaków na podstawie określonych warunków.

val text = "Kotlin"
var count = 0
for (char in text) {
    if (char == 'o' || char == 'i') {
        count++
    }
}
println(count)  // 2

Możesz też użyć withIndex() na ciągach znaków, aby uzyskać zarówno pozycję, jak i znak, tak jak w przypadku list:

val name = "Ada"
for ((index, char) in name.withIndex()) {
    println("$index: $char")
}
// Wynik:
// 0: A
// 1: d
// 2: a
challenge icon

Wyzwanie

Średni

Wczytaj ciąg znaków z wejścia i policz, ile zawiera samogłosek (a, e, i, o, u). Uwzględnij samogłoski zarówno małe, jak i wielkie.

Przejdź przez każdy znak w ciągu i sprawdź, czy jest samogłoską. Wyświetl łączną liczbę znalezionych samogłosek.

Format wejścia:

  • Jeden ciąg znaków

Format wyjścia:

Wyświetl jedną liczbę całkowitą oznaczającą liczbę samogłosek w ciągu.

Podpowiedź: Możesz zamienić każdy znak na małą literę za pomocą lowercaseChar() przed sprawdzeniem albo sprawdzać osobno oba warianty.

Spróbuj swoich sił

fun main() {
    // Wczytaj dane wejściowe
    val text = readLine()!!
    
    // TODO: Napisz poniżej kod, który policzy samogłoski w ciągu znaków
    
    
    // Wyświetl wynik
    println(count)
}
quiz iconSprawdź się

Ta lekcja zawiera krótki quiz. Zacznij lekcję, żeby na niego odpowiedzieć i śledzić swoje postępy.

Wszystkie lekcje w sekcji Podstawy

Poćwicz samodzielnie: Edytor online Kotlin