Управление библиотекой книг с наследованием классов
Swift
Средний
classes
Задача «Управление библиотекой книг с наследованием классов»
Создайте класс LibraryItem с полями title (String), year (Int) и методом description(), возвращающим строку вида "Title: \(title), Year: \(year)". Затем создайте класс Book, наследующий от LibraryItem, с дополнительным полем author (String). Переопределите метод description() так, чтобы он возвращал строку вида "Book: \(title) by \(author), \(year)". В основной программе прочитайте 6 строк: сначала 3 строки для создания объекта LibraryItem (название, год), затем 3 строки для создания объекта Book (название, год, автор). Выведите результаты вызова description() для каждого объекта на отдельных строках. Гарантируется, что год — целое число.
Формат ввода
Шесть строк: первая строка — название первого объекта (LibraryItem), вторая — год первого объекта, третья — название второго объекта (Book), четвёртая — год второго объекта, пятая — автор второго объекта, шестая — пустая строка (не используется).
Формат вывода
Две строки: первая — результат description() для LibraryItem, вторая — результат description() для Book.
Примеры
Пример 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