<div> <p>إدارة مكتبة الكتب باستخدام توارث الفئات</p> </div>
Swift
Medium
classes
مهمة «<div> <p>إدارة مكتبة الكتب باستخدام توارث الفئات</p> </div>»
أنشئ صنفًا `LibraryItem` يحتوي على الحقول `title` (نص) و `year` (عدد صحيح) والدالة `description()` التي تُرجع سلسلة نصية بالشكل `"Title: \(title), Year: \(year)"`. ثم أنشئ صنفًا `Book` يرث من `LibraryItem`، مع حقل إضافي `author` (نص). أعد تعريف الدالة `description()` بحيث تُرجع سلسلة نصية بالشكل `"Book: \(title) by \(author), \(year)"`. في البرنامج الرئيسي، اقرأ 6 أسطر: أول 3 أسطر لإنشاء كائن من `LibraryItem` (العنوان، السنة)، ثم 3 أسطر لإنشاء كائن من `Book` (العنوان، السنة، المؤلف). اطبع نتائج استدعاء `description()` لكل كائن في سطر منفصل. من المضمون أن السنة عدد صحيح.
تنسيق الإدخال
ستة أسطر: السطر الأول — اسم العنصر الأول (LibraryItem)، السطر الثاني — سنة العنصر الأول، السطر الثالث — اسم العنصر الثاني (Book)، السطر الرابع — سنة العنصر الثاني، السطر الخامس — مؤلف العنصر الثاني، السطر السادس — سطر فارغ (غير مستخدم).
تنسيق الإخراج
<p>سلسلتان: الأولى — نتيجة <code>description()</code> للعنصر <code>LibraryItem</code>، والثانية — نتيجة <code>description()</code> للكتاب <code>Book</code>.</p>
أمثلة
مثال 1
الإدخال
7
ADD Война и мир Толстой 1869
ADD Преступление и наказание Достоевский 1866
ADD Анна Каренина Толстой 1877
FIND_AUTHOR Толстой
FIND_YEAR 1870
FIND_AUTHOR Пушкин
الإخراج
Title: Война и мир, Year: 1869
Book: Преступление и наказание by Достоевский, 1866
مثال 2
الإدخال
6
add 1984 GeorgeOrwell 1949
add BraveNewWorld AldousHuxley 1932
find GeorgeOrwell
borrow 1984
borrow 1984
find GeorgeOrwell
الإخراج
Title: add, Year: 1984
Book: BraveNewWorld by AldousHuxley, 1932
main.swift