חיפוש בקטלוג
חלק מהיחידה תכנות מונחה עצמים במסלול ה-R של Coddy. שיעור 53 מתוך 57.
אתגר
קלהוסף את הפקודה SEARCH באמצעות המתודה search_titles(text). השאר את כל הפקודות מהשלבים הקודמים פועלות בדיוק כמו קודם.
SEARCH <text>: הטקסט יכול להכיל רווחים. השב בשורה אחת עבור כל ספר שהכותרת שלו מכילה את הטקסט, ללא תלות באותיות גדולות או קטנות, לפי סדר מזהי הספרים:Dune (available)אוEmma (borrowed by ada). אם אין התאמות, השבno matches.
הקוד שסופק שולח כל שורת קלט אל lib$handle(line) ומדפיס כל תשובה שהוחזרה בשורה נפרדת. שמות החברים הם מילים בודדות באותיות קטנות, מזהי הספרים הם מספרים שלמים, והקלט מכיל רק את הפקודות שתוארו עד כה. כל פקודה אחרת מחזירה unknown command.
הקוד שלך ייכתב בקבצים Book.R, Member.R ו-Library.R. הקובץ main.R מכיל את קוד הקלט/פלט שסופק ואי אפשר לערוך אותו.
נסו בעצמכם
source("Book.R")
source("Member.R")
source("Library.R")
# קוד קלט/פלט שסופק: יש להשאיר אותו כפי שהוא
input <- suppressWarnings(readLines(file("stdin")))
lib <- Library$new()
for (line in input) {
for (reply in lib$handle(line)) cat(reply, "\n", sep = "")
}
כל השיעורים ביחידה תכנות מונחה עצמים
1יסודות S3
עבודה עם קבציםרשימות עם מחלקהפונקציות בנאימתודות print ו-formatמאמתים ופונקציות עזרחזרה – טמפרטורותתרגלו בעצמכם: קומפיילר R אונליין