Menu
Coddy logo textTech

קיצורי דרך למערכים

חלק מהיחידה יסודות במסלול ה-Ruby של Coddy. שיעור 64 מתוך 88.

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

תחביר %w יוצר מערך של מחרוזות בלי צורך במירכאות או בפסיקים:

fruits = %w[apple banana cherry]
puts fruits  # פלט: apple, banana, cherry

הדבר שקול לכתיבת ["apple", "banana", "cherry"], אבל תמציתי הרבה יותר. כל מילה שמופרדת ברווח הופכת לאיבר נפרד.

עבור מערכים של סמלים, השתמשו ב־%i:

statuses = %i[pending active completed]
puts statuses  # פלט: pending, active, completed

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

numbers = (1..5).to_a
puts numbers  # פלט: 1, 2, 3, 4, 5

אפשר גם להשתמש באופרטור splat * בתוך סוגריים מרובעים של מערך:

countdown = [*5..10]
puts countdown  # פלט: 5, 6, 7, 8, 9, 10

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

challenge icon

אתגר

קל

קרא שתי קלטים:

  1. שורה אחת של מילים המופרדות ברווחים (למשל, red green blue yellow)
  2. שני מספרים שלמים המופרדים בפסיק ומייצגים טווח (למשל, 3,7)

בצע את המשימות הבאות:

  1. צור מערך של מחרוזות מהקלט הראשון באמצעות תחביר הקיצור %w. מכיוון שהקלט כבר מחרוזת, יהיה עליך להשתמש ב-split כדי להמיר אותו קודם למערך, ולאחר מכן להדגים את %w באמצעות יצירת מערך נפרד עם המילים alpha, beta, gamma.
  2. צור מערך של סמלים באמצעות %i עם הערכים start, middle, end.
  3. צור מערך של מספרים עוקבים מהטווח שסופק בקלט השני, באמצעות אופרטור הפריסה * בתוך סוגריים מרובעים של מערך.

הדפס את הפריטים הבאים בשורות נפרדות:

  1. כל איבר במערך המילים שהתקבל בקלט
  2. שורה ריקה
  3. כל איבר במערך %w (alpha, beta, gamma)
  4. שורה ריקה
  5. כל איבר במערך הסמלים %i
  6. שורה ריקה
  7. כל איבר במערך טווח המספרים

לדוגמה, אם הקלטים הם red green blue ו-1,5, הפלט צריך להיות:

red
green
blue

alpha
beta
gamma

start
middle
end

1
2
3
4
5

אם הקלטים הם sun moon star ו-10,13, הפלט צריך להיות:

sun
moon
star

alpha
beta
gamma

start
middle
end

10
11
12
13

נסו בעצמכם

# קראו את המילים המופרדות ברווחים
words_input = gets.chomp

# קראו את הטווח (שני מספרים שלמים המופרדים בפסיק)
range_input = gets.chomp

# TODO: כתבו את הקוד שלכם למטה
# 1. צרו מערך מ-words_input באמצעות split
# 2. צרו מערך %w עם alpha, beta, gamma
# 3. צרו מערך %i עם start, middle, end
# 4. פענחו את הטווח וצרו מערך באמצעות אופרטור splat (*)

# הדפיסו את האיברים של כל מערך בשורות נפרדות, עם שורות ריקות בין המערכים
quiz iconבחנו את עצמכם

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

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

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