Monday, January 10, 2022

Book Shop Management System_v2 in C++

This is a Character based User Interface or CUI based simple computerized solution to manage the system activities. This prototype code saves time and energy of its user by automating certain tasks. This system is either file handling type or ROM type, and stores activities in a coder-defined file or on ROM memory temporarily.

C++ is a typed language, so no need of code explanation as everything will be cleared by itself by reading the code. If you know C++, you know this code. It’s that simple!

Note to students, draw a class diagram and flow chart of system by reading the code itself. The Code::Blocks IDE 20.03+MinGW and Cygwin tool are used to test the code.

Note that some systems are very simple and need enhancement but they are complete on their own in other terms.

 

BookShopManagementSystem_v2.cpp

 

 

 

 

#include<iostream>

#include<string.h>

#include<stdlib.h>

 

using namespace std;

 

class book

{

private:

    char *author,*title,*publisher;

    float *price;

    int *stock;

public:

    book()

    {

        author= new char[20];

        title=new char[20];

        publisher=new char[20];

        price= new float;

        stock=new int;

    }

    void feeddata();

    void editdata();

    void showdata();

    int search(char[],char[]);

    void buybook();

 

};

 

void book::feeddata()

{

    cin.ignore();

    cout<<"\nEnter Author Name: ";

    cin.getline(author,20);

    cout<<"Enter Title Name: ";

    cin.getline(title,20);

    cout<<"Enter Publisher Name: ";

    cin.getline(publisher,20);

    cout<<"Enter Price: ";

    cin>>*price;

    cout<<"Enter Stock Position: ";

    cin>>*stock;

 

}

 

void book::editdata()

{

 

    cout<<"\nEnter Author Name: ";

    cin.getline(author,20);

    cout<<"Enter Title Name: ";

    cin.getline(title,20);

    cout<<"Enter Publisher Name: ";

    cin.getline(publisher,20);

    cout<<"Enter Price: ";

    cin>>*price;

    cout<<"Enter Stock Position: ";

    cin>>*stock;

 

}

 

void book::showdata()

{

    cout<<"\nAuthor Name: "<<author;

    cout<<"\nTitle Name: "<<title;

    cout<<"\nPublisher Name: "<<publisher;

    cout<<"\nPrice: "<<*price;

    cout<<"\nStock Position: "<<*stock;

 

}

 

int book::search(char tbuy[20],char abuy[20] )

{

    if(strcmp(tbuy,title)==0 && strcmp(abuy,author)==0)

        return 1;

    else return 0;

 

}

 

void book::buybook()

{

    int count;

    cout<<"\nEnter Number Of Books to buy: ";

    cin>>count;

    if(count<=*stock)

    {

        *stock=*stock-count;

        cout<<"\nBooks Bought Successfully";

        cout<<"\nAmount: Rs. "<<(*price)*count;

    }

    else

        cout<<"\nRequired Copies not in Stock";

}

 

int main()

{

    book *B[20];

    int i=0,r,t,choice;

    char titlebuy[20],authorbuy[20];

    while(1)

    {

        cout<<"\n\n\t\tMENU"

            <<"\n1. Entry of New Book"

            <<"\n2. Buy Book"

            <<"\n3. Search For Book"

            <<"\n4. Edit Details Of Book"

            <<"\n5. Exit"

            <<"\n\nEnter your Choice: ";

        cin>>choice;

 

        switch(choice)

        {

        case 1:

            B[i] = new book;

            B[i]->feeddata();

            i++;

            break;

 

        case 2:

            cin.ignore();

            cout<<"\nEnter Title Of Book: ";

            cin.getline(titlebuy,20);

            cout<<"Enter Author Of Book: ";

            cin.getline(authorbuy,20);

            for(t=0; t<i; t++)

            {

                if(B[t]->search(titlebuy,authorbuy))

                {

                    B[t]->buybook();

                    break;

                }

            }

            if(t==1)

                cout<<"\nThis Book is Not in Stock";

 

            break;

        case 3:

            cin.ignore();

            cout<<"\nEnter Title Of Book: ";

            cin.getline(titlebuy,20);

            cout<<"Enter Author Of Book: ";

            cin.getline(authorbuy,20);

 

            for(t=0; t<i; t++)

            {

                if(B[t]->search(titlebuy,authorbuy))

                {

                    cout<<"\nBook Found Successfully";

                    B[t]->showdata();

                    break;

                }

            }

            if(t==i)

                cout<<"\nThis Book is Not in Stock";

            break;

 

        case 4:

            cin.ignore();

            cout<<"\nEnter Title Of Book: ";

            cin.getline(titlebuy,20);

            cout<<"Enter Author Of Book: ";

            cin.getline(authorbuy,20);

 

            for(t=0; t<i; t++)

            {

                if(B[t]->search(titlebuy,authorbuy))

                {

                    cout<<"\nBook Found Successfully";

                    B[t]->editdata();

                    break;

                }

            }

            if(t==i)

                cout<<"\nThis Book is Not in Stock";

            break;

 

        case 5:

            exit(0);

        default:

            cout<<"\nInvalid Choice Entered";

 

        }

    }

 

    return 0;

}

 

 

 

For more C/C++ codes related information click here.

…till next post, bye-bye and take care.

 


No comments:

Post a Comment