Menu
Coddy logo textTech

אופרטורים של רצפים

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

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

כדי לחבר שתי רשימות לרשימה אחת, פשוט השתמשו באופרטור +:

val first = listOf(1, 2, 3)
val second = listOf(4, 5, 6)
val combined = first + second
println(combined)  // [1, 2, 3, 4, 5, 6]

אפשר גם להוסיף איבר יחיד לרשימה באמצעות אותו אופרטור:

val colors = listOf("Red", "Green")
val moreColors = colors + "Blue"
println(moreColors)  // [Red, Green, Blue]

האופרטור - מסיר איברים מרשימה. הוא יוצר רשימה חדשה ללא האיבר שצוין:

val numbers = listOf(1, 2, 3, 2, 4)
val result = numbers - 2
println(result)  // [1, 3, 2, 4]

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

val numbers = listOf(1, 2, 3, 2, 4)
val result = numbers - listOf(2)
println(result)  // [1, 3, 4]

האופרטורים האלה תמיד מחזירים רשימה חדשה: הרשימות המקוריות נותרות ללא שינוי. כך אפשר להשתמש בהם בבטחה, בלי לחשוש משינוי מקרי של הנתונים שלך.

challenge icon

אתגר

בינוני

תקבל שתי רשימות של מספרים שלמים ומספר שלם יחיד להסרה. שלב את שתי הרשימות באמצעות האופרטור +, ואז הסר את כל המופעים של המספר השלם שצוין באמצעות האופרטור - עם רשימה.

הדפס את הרשימה שהתקבלה.

פורמט הקלט:

  • השורה הראשונה: מספר שלם n שמייצג את מספר האיברים ברשימה הראשונה
  • n השורות הבאות: מספרים שלמים עבור הרשימה הראשונה
  • השורה הבאה: מספר שלם m שמייצג את מספר האיברים ברשימה השנייה
  • m השורות הבאות: מספרים שלמים עבור הרשימה השנייה
  • השורה האחרונה: המספר השלם שיש להסיר מהרשימה המשולבת

פורמט הפלט:

הדפס את הרשימה שהתקבלה בפורמט הרשימה ברירת המחדל של Kotlin.

דוגמה:

אם הרשימה הראשונה היא [1, 2, 3], הרשימה השנייה היא [2, 4, 2], והמספר שיש להסיר הוא 2, הרשימה המשולבת תהיה [1, 2, 3, 2, 4, 2]. לאחר הסרת כל המופעים של 2, הפלט צריך להיות:

[1, 3, 4]

נסו בעצמכם

fun main() {
    // קראו את הרשימה הראשונה
    val n = readLine()!!.toInt()
    val list1 = mutableListOf<Int>()
    repeat(n) {
        list1.add(readLine()!!.toInt())
    }
    
    // קראו את הרשימה השנייה
    val m = readLine()!!.toInt()
    val list2 = mutableListOf<Int>()
    repeat(m) {
        list2.add(readLine()!!.toInt())
    }
    
    // קראו את המספר השלם שיש להסיר
    val toRemove = readLine()!!.toInt()
    
    // TODO: כתבו כאן את הקוד שלכם
    // שלבו את שתי הרשימות באמצעות האופרטור +
    // הסירו את כל המופעים של toRemove באמצעות האופרטור - עם רשימה
    
    // הדפיסו את הרשימה שהתקבלה
    println(result)
}
quiz iconבחנו את עצמכם

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

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

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