задача:<div>Необходимо создать систему учёта выдачи и возврата библиотечных книг.</div><div>В данной системе хранятся справочники о книгах, которые выдаются, их авторах, жанрах и издательствах, сотрудниках библиотеки, выдающих книги, и читателях, которым выдаются книги. </div><div>Важно: библиотека хранит информацию о читателях в виде читательских билетов, содержащих фамилию, имя, отчество (при наличии), возраст, номер телефона, адрес электронной почты.</div><div>У всех записей справочников есть идентификационный номер, который не отображается в системе, при этом этот номер должен быть неизменяемым и, если запись может исчезнуть из справочника, недоступным.</div><div>Необходимо оформить хранение справочников в текстовых файлах, с разделителем '#' и их представление в системе в виде таблиц. Также стоит учесть, что можно добавлять, изменять и удалять записи всех таблично представленных справочников в системе и что все изменения должны быть сохранены при окончании изменения данных справочников.</div><div><br></div><div>Учесть просмотр записей справочников в отдельных окнах и связных записей, если запись одного справочника связана с записью другого, в виде таблиц.</div><div><br></div><div>Учёт выдачи происходит через журнал выдачи/возврата книг в формате «<Номер билета>#<Номер книги>##<Номер сотрудника>#<Выдача/Возврат>».</div><div><br></div><div>Необходимо оформить два отчёта: «Самые популярные книги и минимально популярные книги» и «Рейтинг сотрудников». Отчёты формируются по объёму выдачи и объёму возврата книг.</div><div><br></div><div>Создать тесты для системы:</div><div>- чтение файлов;</div><div>- запись файлов;</div><div>- изменение файлов;</div><div>- добавление записи (в таблицу);</div><div>- изменение записи (в таблице);</div><div>- удаление записи (из таблицы);</div><div>- создание отчётов (по отдельности).</div><div>Создать меню навигации, в котором можно открывать справочники и генераторы отчётов.</div><div>Примечание: </div><div>1. При закрытии приложения должно отображаться диалоговое окно с подтверждением выхода из программы. </div><div>2. Необходимо добавить диалоговые окна при добавлении, редактировании и удалении данных ("Вы уверены, что хотите сохранить изменения?"</div>