שינוי מערכים
חלק מהיחידה יסודות במסלול ה-Ruby של Coddy. שיעור 60 מתוך 88.
עכשיו, כשאתם יודעים איך לגשת לאיברים במערך, בואו נלמד איך לשנות אותם. תוכלו לשנות כל איבר על ידי הקצאת ערך חדש לאינדקס שלו:
fruits = ["apple", "banana", "cherry"]
fruits[1] = "mango"
puts fruits # פלט: apple, mango, cherryכדי להוסיף איברים למערך, השתמשו בשיטה push או באופרטור האת, <<. שניהם מוסיפים איברים לסוף:
colors = ["red", "blue"]
colors.push("green")
colors << "yellow"
puts colors # פלט: red, blue, green, yellowכדי להסיר איברים, Ruby מספקת כמה אפשרויות. המתודה pop מסירה ומחזירה את האיבר האחרון, ואילו shift מסירה את הראשון:
numbers = [1, 2, 3, 4]
numbers.pop # מסיר את 4
numbers.shift # מסיר את 1
puts numbers # פלט: 2, 3אפשר גם להסיר ערך מסוים באמצעות delete:
letters = ["a", "b", "c", "b"]
letters.delete("b")
puts letters # פלט: a, cשימו לב ש-delete מסירה את כל המופעים של הערך שצוין מהמערך.
אתגר
קלהמערך הבא נתון לך:
tasks = ["email", "meeting", "lunch", "report", "call"]קרא שלושה קלטים:
- אינדקס (מספר שלם) - המיקום שיש לשנות
- ערך חדש (מחרוזת) - הערך שיחליף את הערך במיקום הזה
- ערך למחיקה (מחרוזת) - איבר להסרה מהמערך
בצע את הפעולות הבאות לפי הסדר:
- החלף את האיבר באינדקס הנתון בערך החדש
- הוסף
"<code>review" לסוף המערך באמצעותpush - הוסף
"planning"לסוף המערך באמצעות אופרטור האת<< - הסר את האיבר האחרון באמצעות
pop - הסר את האיבר הראשון באמצעות
shift - מחק את כל המופעים של הערך שצוין באמצעות
delete
הדפס את המערך הסופי באמצעות puts.
לדוגמה, אם הקלטים הם 2, break ו-call, הפלט צריך להיות:
meeting
break
report
reviewאם הקלטים הם 0, standup ו-report, הפלט צריך להיות:
meeting
lunch
call
reviewאם הקלטים הם 4, demo ו-lunch, הפלט צריך להיות:
meeting
report
demo
reviewנסו בעצמכם
# מערך התחלתי
tasks = ["email", "meeting", "lunch", "report", "call"]
# קראו את הקלט
index = gets.chomp.to_i
new_value = gets.chomp
value_to_delete = gets.chomp
# TODO: כתבו את הקוד שלכם למטה
# 1. החליפו את האיבר באינדקס הנתון בערך החדש
# 2. הוסיפו לסוף את הטקסט המדויק מההוראות באמצעות push
# 3. הוסיפו לסוף את "planning" באמצעות האופרטור <<
# 4. הסירו את האיבר האחרון באמצעות pop
# 5. הסירו את האיבר הראשון באמצעות shift
# 6. מחקו את כל המופעים של הערך שצוין באמצעות delete
# הדפיסו את המערך הסופי
puts tasksהשיעור הזה כולל חידון קצר. התחילו את השיעור כדי לענות עליו ולעקוב אחרי ההתקדמות.
כל השיעורים ביחידה יסודות
4אופרטורים חלק 2
אופרטורים לוגיים חלק 1אופרטורים לוגיים חלק 2חזרה – לוגיקה פשוטהאופרטורים לוגיים חלק 3אופרטורים לוגיים חלק 42משתנים וטיפוסי נתונים
מספרים ומשתניםטיפוס הנתונים מחרוזתטיפוס הנתונים בוליאניטיפוס הנתונים Symbolבדיקת טיפוסי נתוניםמוסכמות שמותסיכום – יצירת משתנים8לולאות
לולאת for עם טווחיםלולאת whilebreaknextסיכום – עצרתלולאת timesלולאת untilלולאות מקוננותסיכום – קלט דינמי3אופרטורים חלק 1
אופרטורים אריתמטייםאופרטור מודולוקיצורי דרך אריתמטייםסיכום – חשבון פשוטאופרטורי השוואה6קלט ופלט בסיסיים
פלט באמצעות putsפלט באמצעות print ו־pפלט באמצעות משתניםקלט באמצעות getsשיטת Chompהמרת טיפוסיםחזרה — מחשבון גילחזרה — אמת או שקר9מתודות
הגדרת מתודהפרמטרים של מתודהערכי החזרהסיכום - מתודת Sigmaסיכום - מתודת האימותערכי ברירת מחדל של פרמטרים15מעקב אחר הוצאות יומיות
סקירת הפרויקטיציאה מהתוכניתתרגלו בעצמכם: קומפיילר Ruby אונליין