0% found this document useful (0 votes)
86 views

Assignment 1

This document outlines an assignment to create a library management system using linked lists in Python. Students are asked to implement functions to add, view, delete, borrow, and return books in two linked lists - one to store book data and one for borrowed books. The book data list should track each book's ID, title, author, and availability status. The borrow list tracks which book was lent by which borrower. Students must create files for each function, a main menu file, and submit all files in a compressed folder for grading. The system will be assessed based on implementing the required functions and student's ability to explain their work.
Copyright
© © All Rights Reserved
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
86 views

Assignment 1

This document outlines an assignment to create a library management system using linked lists in Python. Students are asked to implement functions to add, view, delete, borrow, and return books in two linked lists - one to store book data and one for borrowed books. The book data list should track each book's ID, title, author, and availability status. The borrow list tracks which book was lent by which borrower. Students must create files for each function, a main menu file, and submit all files in a compressed folder for grading. The system will be assessed based on implementing the required functions and student's ability to explain their work.
Copyright
© © All Rights Reserved
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 3

DSA - Assignment 1

Library Management System


using linked list data structure
INTRODUCTION
Your first assignment in this block is to use linked list data structure for
implementing a small Library Management System (LMS) in Python. LMS manages
information of books and borrowed books including:
For books:
1. bid (string): the id of the book (this should be unique for the book).
2. title (string): the title of the book.
3. author (string): the person/people who write (s) the book(s).
4. status (string): the status of  books in the library. (available or issued)

For borrowed books:

1. bid (string): the code of the book to be lended.


2. borrower (string): the name of the borrower.

YOUR TASKS

You should use 2 linked lists storing data of books and borrowed books respectively.
You are not allowed to use available list structures in python such as ArrayList,
Vector or LinkedList classes.

Your program should have a menu that allows users to choose a corresponding task.

Your system should inlcude the following files:

main.py – displays a menu that allows users to choose a corresponding tasks (1 mark)

AddBook.py – Add books to the database (2 marks)

ViewBooks.py – Displays the list of books in the library (2 marks)

DeleteBook.py – Delete a book from the library (2 marks)


BorrowedBook.py – Lend a book from library (1 mark)

ReturnBook.py – Return a book to the library (2 marks)

Tasks explanation
Book list (8 marks):
1.1.      Add book detail
Allow a user to add information of books. The content of the file should be as below:

Bid | Title | Author | status (0 – available)

B01  |  Physics     |  Michael G. Solomon    |  0


B02  |  Biology     |  Andreas M. Antonopoulos  |  0
B03  |  Southern   |  Tiana Laurence   |  0

1.2.      View book


Display data in format:
bid  |  title  |  author  |  status

For example after loading the above file, this option give the output below:
Bid |   Title        |  Author  |  status
-------------------------------------------------------------------
B01  |  Physics     |  Michael G. Solomon    |  0
B02  |  Biology     |  Andreas M. Antonopoulos  |  0
B03  |  Southern   |  Tiana Laurence   |  0

1.3.      Delete book

Write the function :


def deleteBook()
which deletes the node whose info contains the book with entered bid.

1.4.      Borrow book


Allow a user to input lending item.
When running, the screen looks like:
Enter book id:
After the user enter bid, the program checks if books available, users can lend
1.5.      Return book
Enter book id:
After the user enter bid users can return books and program set status available

Submission Requirements
Create the directory with a name like <class>-<name><roll number>-ASS1, e.g.
            SE0508-QuangTV00456-ASS1                        (1)

Compress the folder   (1)  to .zip (or .rar) file (with the same name) and upload to cms.

Assignment assessment
You will be asked to modify immediately and to explain your assignment in lab room
to be sure that you are really the author of the assignment you submitted.

You might also like