Menu
Coddy logo textTech

איטרציה על מחרוזות חלק 1

חלק מהיחידה יסודות במסלול ה-Kotlin של Coddy. שיעור 76 מתוך 93.

בדומה לרשימות, אפשר לעבור על מחרוזות תו אחר תו באמצעות לולאת for. ב-Kotlin, מחרוזת היא למעשה רצף של תווים, ולכן אותה תבנית איטרציה חלה גם כאן.

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

בכל איטרציה מתקבלת תו יחיד מסוג Char מתוך המחרוזת. זה שימושי כשצריך לבדוק או לעבד כל תו בנפרד, למשל כדי לספור אותיות מסוימות או לבנות מחרוזת חדשה על סמך תנאים מסוימים.

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

אפשר גם להשתמש ב־withIndex() על מחרוזות כדי לקבל גם את המיקום וגם את התו, בדיוק כמו ברשימות:

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

אתגר

בינוני

קראו מחרוזת מהקלט וספרו כמה תנועות (a, e, i, o, u) היא מכילה. התייחסו לתנועות קטנות וגדולות כאחד.

עברו על כל תו במחרוזת ובדקו אם הוא תנועה. הדפיסו את המספר הכולל של התנועות שנמצאו.

פורמט הקלט:

  • מחרוזת אחת

פורמט הפלט:

הדפיסו מספר שלם יחיד המייצג את מספר התנועות במחרוזת.

רמז: אפשר להמיר כל תו לאות קטנה באמצעות lowercaseChar() לפני הבדיקה, או לבדוק את שני המקרים בנפרד.

נסו בעצמכם

fun main() {
    // קראו את הקלט
    val text = readLine()!!
    
    // TODO: כתבו את הקוד שלכם למטה כדי לספור את אותיות התנועה במחרוזת
    
    
    // הדפיסו את התוצאה
    println(count)
}
quiz iconבחנו את עצמכם

השיעור הזה כולל חידון קצר. התחילו את השיעור כדי לענות עליו ולעקוב אחרי ההתקדמות.

כל השיעורים ביחידה יסודות

תרגלו בעצמכם: Kotlin אונליין