Gestion d’une bibliothèque de livres avec classes

Kotlin Medium classes

Tâche «Gestion d’une bibliothèque de livres avec classes»

Créez une classe Book avec les champs title (titre), author (auteur) et year (année de publication). Implémentez une classe Library qui stocke une liste de livres et fournit les méthodes addBook(book: Book) pour ajouter un livre, findBooksByAuthor(author: String): List<Book> pour rechercher tous les livres d’un auteur donné et getBooksAfterYear(year: Int): List<Book> pour obtenir les livres publiés après une année donnée. Données d’entrée : d’abord un entier N — le nombre d’opérations. Ensuite N lignes, chacune contient une commande : ADD <title> <author> <year> — ajouter un livre ; FIND_AUTHOR <author> — afficher les titres des livres de cet auteur séparés par des virgules dans l’ordre d’ajout ; FIND_YEAR <year> — afficher les titres des livres publiés après l’année indiquée, séparés par des virgules dans l’ordre d’ajout. Si aucun livre n’est trouvé, afficher "Not found".

Format d\ entrée

Un entier N (1 ≤ N ≤ 1000). Ensuite N lignes avec des commandes.

Format de sortie

Pour chaque commande FIND_AUTHOR ou FIND_YEAR — une ligne avec le résultat (titres des livres séparés par des virgules) ou "Not found".

Exemples

Exemple 1

ENTRÉE
3 ADD Мастер и Маргарита Булгаков 1967 ADD Собачье сердце Булгаков 1925 FIND_AUTHOR Булгаков
SORTIE
Мастер и Маргарита, Собачье сердце

Exemple 2

ENTRÉE
4 add TheHobbit J.R.R.Tolkien 1937 add TheLordOfTheRings J.R.R.Tolkien 1954 find J.R.R.Tolkien borrow TheHobbit
SORTIE

Exemple 3

ENTRÉE
4 ADD 1984 Оруэлл 1949 ADD Скотный двор Оруэлл 1945 FIND_YEAR 1946 FIND_AUTHOR Оруэлл
SORTIE
1984 1984, Скотный двор
main.kt