Menu
Coddy logo textTech
flag Ar iconالعربيةdown icon

تقرير المكتبة

جزء من قسم البرمجة كائنية التوجه في رحلة R على Coddy. الدرس 54 من 57.

challenge icon

التحدي

متوسط

أضف الأمر REPORT من خلال الطريقة report_lines(). أبقِ كل أمر من الخطوات السابقة يعمل تمامًا كما كان من قبل.

  • REPORT: أعد books: 3, borrowed: 1، ثم سطرًا واحدًا لكل عضو بالترتيب الأبجدي: ada: Dune, Emma مع العناوين بترتيب الاستعارة، أو bo: none.

يرسل الكود المقدم كل سطر إدخال إلى 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 = "")
}

جميع دروس البرمجة كائنية التوجه

تدرّب بنفسك: مترجم R عبر الإنترنت