Menu
Coddy logo textTech

השאלת ספרים

חלק מהיחידה תכנות מונחה עצמים במסלול ה-Ruby של Coddy. שיעור 51 מתוך 57.

challenge icon

אתגר

קל

הוסף את הפקודה BORROW. ודא שכל הפקודות מהשלבים הקודמים ימשיכו לפעול בדיוק כמו קודם.

  • BORROW name id: בדוק לפי הסדר הזה והשב עם הבעיה הראשונה: no member bo, no book 9, Dune is not available, ada has reached the limit (חברים יכולים להחזיק לכל היותר LIMIT ספרים, כלומר 2). אחרת, תעד את ההשאלה גם עבור הספר וגם עבור החבר והשב ada borrowed Dune.

הקוד שסופק מעביר כל שורת קלט אל library.handle(line) ומדפיס כל תשובה שהוחזרה בשורה נפרדת. שמות החברים הם מילים בודדות באותיות קטנות, מזהי הספרים הם מספרים שלמים, והקלט מכיל רק את הפקודות שתוארו עד כה. כל פקודה אחרת משיבה unknown command.

הקוד שלך צריך להיכנס לקבצים book.rb, member.rb ו-library.rb. הקובץ main.rb מכיל את קוד הקלט/פלט שסופק ואי אפשר לערוך אותו.

נסו בעצמכם

require_relative 'book'
require_relative 'member'
require_relative 'library'

# קוד קלט/פלט שסופק: יש להשאיר אותו כפי שהוא
input = []
while (line = gets)
  input << line.chomp
end
library = Library.new
input.each do |line|
  library.handle(line).each { |reply| puts reply }
end

כל השיעורים ביחידה תכנות מונחה עצמים

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