Pages

Friday, May 30, 2025

Book Library Management (University Question)

 #include <iostream>

#include <string>
#include <vector>
using namespace std;

// Library Book Management System

class Book {
private:
    string title;
    string author;

public:
    Book(string t, string a) {
        title = t;
        author = a;
    }
   

    // Constructor :
    string getTitle() {
        return title;
    }

    string getAuthor() {
        return author;
    }


    void showDetails() {
        cout << "Book: " << title << "\nAuthor: " << author << endl;
    }
};

class Library {
private:
    vector<Book> books;


public:


    // Add a book
    void addBook(string title, string author) {
        books.push_back(Book(title, author));
        cout << "Book added successfully.\n";
    }

    // Remove a book
    void removeBook(string title) {
        for(auto it = books.begin(); it <= books.end(); it++) {
            if(it->getTitle() == title) {
                books.erase(it);
                cout << "Book removed successfully.\n";
                return;
            }
        }

        cout << "Book not found.\n";
    }    

    // Show All Books
    void showAllBooks() {
        if(books.empty()){
            cout << "Library is empty.\n";
            return;
        }

        cout << "\nBooks in Library: \n";
        for(auto& book : books) {
            book.showDetails();

        }
    }


};

int main() {
    Library lib;

    lib.addBook("Book S1", "Deb");
    lib.addBook("Book S2", "Deb");
    lib.addBook("Book S3", "Deb");

    lib.showAllBooks();

    lib.removeBook("Book S2");

    lib.showAllBooks();


    return 0;

}

No comments:

Post a Comment

Stack using Linked List – Partial (University Exam Topic)

 #include <iostream> using namespace std; struct Node {     int data;     Node* next; }; class Stack {     Node* top; public:     Stac...