Project 2023
Project 2023
Fall 2023
Project
INSTRUCTIONS:
Please do read requirements of the library application carefully. The maximum points for the
project is 100pts. Each student expected to work individually. You will submit your source code
along with example files by December 28 2023 on DYS and demonstrate your work face-to-
face on December 29 2023. Time schedule will be announced later.
LIBRARY APPLICATION:
Requirements:
In this project, you will develop a simple library application. There are two main components in
the application; books and students. There is also a librarian who will be doing all the operations,
explained below, using the menu that you are going develop.
There are initially two text files; books.txt and students.txt. Format of the files are given below.
Your application should read those files when it runs. The system will start with a menu and run
until exit option is selected. When the exit option is selected in your menu, the updated versions
of book and student files(or others that might be needed) will be saved, so that, when the
application runs again, the operations done in the previous sessions are not lost. For example, if
you add a new book to the library using your application, that book should be there when your
application runs again.
students.txt : it contains the 6 digit id, name and last name of a student.
books.txt : it contains ISBN number, book name, author name and checked field. Checked
field is T(true) if the book is checked by a student and F(false) otherwise. Every column is
separated by comma in this file.
Other than the exit option, you application’s menu will contain:
1) List all the books in the library(10pts)
2) List all the books that are checked out.(10 pts)
3) Add a new book (10pts)
4) Delete a book if it is not checked out. If it is checked out, give a warning message
only.(10pts)
5) Search a book by ISBN number(10pts)
6) Search a book by name(e.g. if python is entered for a name, you should list all the books
where their names contain the word python) (20pts)
7) Check out a book to a student.(Hint: This option can take student id and ISBN number as
parameters) (20pts)
8) List all the students. If a student checked out books, you should list those books under
their names. (10pts)