From 94155e9d71d81a76ebe526940c8cef8bd3123d94 Mon Sep 17 00:00:00 2001 From: Pushkraj P Naik Date: Thu, 31 Oct 2024 16:46:21 +0530 Subject: [PATCH] library management system in c++ --- library | Bin 0 -> 100360 bytes library.cpp | 202 ++++++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 202 insertions(+) create mode 100755 library create mode 100644 library.cpp diff --git a/library b/library new file mode 100755 index 0000000000000000000000000000000000000000..223583a587a30d7dc597740ca2a356d291e9373f GIT binary patch literal 100360 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 +#include +#include +#include +#include // Needed for transform +using namespace std; + +class Book { +private: + static int nextBookID; + int bookID; + string title; + string author; + bool isBorrowed; + +public: + Book(const string &title, const string &author) : title(title), author(author), isBorrowed(false) { + bookID = nextBookID++; + } + + virtual void displayDetails() const { + cout << "Book ID: " << bookID << "\nTitle: " << title << "\nAuthor: " << author << "\nStatus: " + << (isBorrowed ? "Borrowed" : "Available") << endl; + } + + virtual string getType() const = 0; + + int getBookID() const { + return bookID; + } + + bool getBorrowStatus() const { + return isBorrowed; + } + + void borrowBook() { + if (!isBorrowed) { + isBorrowed = true; + cout << "Book borrowed successfully!" << endl; + } else { + cout << "Book is already borrowed!" << endl; + } + } + + void returnBook() { + if (isBorrowed) { + isBorrowed = false; + cout << "Book returned successfully!" << endl; + } else { + cout << "Book is not borrowed!" << endl; + } + } +}; + +int Book::nextBookID = 1001; + +class FictionBook : public Book { +public: + FictionBook(const string &title, const string &author) : Book(title, author) {} + + void displayDetails() const override { + Book::displayDetails(); + cout << "Genre: Fiction" << endl; + } + + string getType() const override { + return "Fiction"; + } +}; + +class NonFictionBook : public Book { +public: + NonFictionBook(const string &title, const string &author) : Book(title, author) {} + + void displayDetails() const override { + Book::displayDetails(); + cout << "Genre: Non-Fiction" << endl; + } + + string getType() const override { + return "Non-Fiction"; + } +}; + +class Library { +private: + vector books; + +public: + void addBook() { + string title, author, type; + cout << "Enter Book Title: "; + cin.ignore(); + getline(cin, title); + cout << "Enter Author Name: "; + getline(cin, author); + cout << "Enter Book Type (Fiction/Non-Fiction): "; + cin >> type; + + // Convert the type to lowercase + transform(type.begin(), type.end(), type.begin(), ::tolower); + + Book* newBook = nullptr; + if (type == "fiction") { + newBook = new FictionBook(title, author); + } else if (type == "non-fiction") { + newBook = new NonFictionBook(title, author); + } else { + cout << "Invalid book type!" << endl; + return; + } + + books.push_back(newBook); + cout << "Book added successfully!" << endl; + } + + void removeBook(int bookID) { + for (auto it = books.begin(); it != books.end(); ++it) { + if ((*it)->getBookID() == bookID) { + delete *it; + books.erase(it); + cout << "Book removed successfully!" << endl; + return; + } + } + cout << "Book not found!" << endl; + } + + void borrowBook(int bookID) { + for (Book* book : books) { + if (book->getBookID() == bookID) { + book->borrowBook(); + return; + } + } + cout << "Book not found!" << endl; + } + + void returnBook(int bookID) { + for (Book* book : books) { + if (book->getBookID() == bookID) { + book->returnBook(); + return; + } + } + cout << "Book not found!" << endl; + } + + void displayAllBooks() const { + cout << "Library Book List\n----------------------------\n"; + for (const Book* book : books) { + book->displayDetails(); + cout << "----------------------------\n"; + } + } + + ~Library() { + for (Book* book : books) { + delete book; + } + } +}; + +int main() { + Library library; + int choice, bookID; + + while (true) { + cout << "\nLibrary Management System\n"; + cout << "1. Add Book\n2. Remove Book\n3. Borrow Book\n4. Return Book\n5. Display All Books\n6. Exit\nChoose an option: "; + cin >> choice; + + switch (choice) { + case 1: + library.addBook(); + break; + case 2: + cout << "Enter Book ID to remove: "; + cin >> bookID; + library.removeBook(bookID); + break; + case 3: + cout << "Enter Book ID to borrow: "; + cin >> bookID; + library.borrowBook(bookID); + break; + case 4: + cout << "Enter Book ID to return: "; + cin >> bookID; + library.returnBook(bookID); + break; + case 5: + library.displayAllBooks(); + break; + case 6: + cout << "Exiting..." << endl; + return 0; + default: + cout << "Invalid option! Please try again." << endl; + } + } +}