Menu
Coddy logo textTech

חיתוך מערכים — חלק 2

חלק מהיחידה יסודות במסלול ה-Swift של Coddy. שיעור 74 מתוך 86.

Swift מספקת תחביר מקוצר ונוח לחיתוך ממערך מההתחלה או עד סופו. במקום לציין במפורש את 0 או את האינדקס האחרון, אפשר להשאיר צד אחד של הטווח ריק.

כדי לחתוך מתחילת מערך ועד לאינדקס מסוים, השמטו את ערך ההתחלה:

let numbers = [10, 20, 30, 40, 50]
let firstThree = numbers[..<3]
print(firstThree)  // [10, 20, 30]

באופן דומה, כדי לחתוך מאינדקס מסוים ועד הסוף, יש להשמיט את ערך הסיום:

let numbers = [10, 20, 30, 40, 50]
let fromIndex2 = numbers[2...]
print(fromIndex2)  // [30, 40, 50]

אפשר גם להשתמש בגרסה של טווח סגור כדי לכלול נקודת התחלה מסוימת:

let letters = ["a", "b", "c", "d", "e"]
let upToIndex3 = letters[...3]
print(upToIndex3)  // ["a", "b", "c", "d"]

הטווחים החד־צדדיים האלה הופכים את הקוד שלך לנקי יותר כשצריך את האלמנטים הראשונים או את כל מה שמופיע אחרי נקודה מסוימת. זכור לעטוף את התוצאה ב־Array() אם אתה צריך מערך רגיל במקום ArraySlice.

challenge icon

אתגר

קל
כתבו פונקציה splitArray שמקבלת את numbers ואת index ומחזירה את כל האיברים מהאינדקס הנתון ועד סוף המערך.

השתמשו באופרטור הטווח החד־צדדי (...) כדי לחתוך מהאינדקס שצוין ועד הסוף, והחזירו את התוצאה כמערך רגיל.

פרמטרים:

  • numbers ([Int]): המערך לחיתוך
  • index (Int]): אינדקס ההתחלה (כולל)

ערך מוחזר: מערך המכיל את כל האיברים מהאינדקס הנתון ועד סוף המערך ([Int])

דוגמה: אם numbers הוא [5, 10, 15, 20, 25, 30] ו-index הוא 3, הפונקציה צריכה להחזיר [20, 25, 30].

נסו בעצמכם

func splitArray(numbers: [Int], index: Int) -> [Int] {
    // כתבו כאן קוד
}
quiz iconבחנו את עצמכם

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

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

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