השאלת ספרים
חלק מהיחידה תכנות מונחה עצמים במסלול ה-R של Coddy. שיעור 51 מתוך 57.
אתגר
קלהוסיפו את הפקודה BORROW באמצעות המתודה borrow(name, id). ודאו שכל הפקודות מהשלבים הקודמים ממשיכות לפעול בדיוק כמו קודם.
BORROW <name> <id>: בדקו לפי הסדר הזה והשיבו עם הבעיה הראשונה:no member bo,no book 9,Dune is not available,ada has reached the limit(חברים יכולים להחזיק לכל היותרlimitספרים, 2). אחרת, תעדו את ההשאלה גם בספר (borrower) וגם אצל החבר (borrowed) והשיבוada borrowed Dune.
הקוד שסופק מעביר כל שורת קלט אל 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 אונליין