help in lib management project

Discussion in 'C++' started by maddy05, Jan 24, 2009.

  1. maddy05

    maddy05 New Member

    Joined:
    Jan 24, 2009
    Messages:
    1
    Likes Received:
    0
    Trophy Points:
    0
    the issue function is not working well instead of modifying the book record it is adding another book with a issue value 2
    can any one correct it
    Code:
    // **library management** //
    // **library members can add,delete,modify and search book** // 
    // **library members can operate users account** //
    // **user can manage his record,issue and return a book** //
    // **user can take only 1 book at a time** //
    
    
    
    #include<fstream.h>
    #include<iostream.h>
    #include<conio.h>
    #include<string.h>
    #include<stdio.h>
    #include<process.h>
    #include<math.h>
    #include<dos.h>
    #include<graphics.h>
    #include<iomanip.h>
    #include<stdlib.h>
    
    
    
    
    void mainmenu(void);
     
    
    
    
    struct libdate  // *defining date* //
    {
    int day;
    int month;
    int year;
    };
    
    
    
    struct address // *defining address* //
    {
    int hno ;
    char area[100];
    char city[100];
    long int pincode;
    };
    
    
    class book    // *defining class book* //
    {
    int bcode;
    char bname[100];
    char author[100];
    char category[100];
    int issue;
    libdate doe;                // *structure as class member* //
    
    public :
    
    void modify(void);
    
    int getissue()
    {
    return issue;
    }
    
    void cissuey(void)
    {
    issue=1;
    }
    
    void cissuen(void)
    {
    issue=2;
    }
    
    void getdata(void)//*inputing data* //
    {
     int gdriver = EGA, gmode = EGAHI;
       int bkcol, maxcolor,color;
       initgraph(&gdriver, &gmode,"");
       maxcolor = getmaxcolor();
          bkcol=maxcolor=6;
          setbkcolor(bkcol);
          color=maxcolor;
          setcolor(color);
    cout<<"ENTER NAME:"<<endl;
    gets(bname);
    cout<<"ENTER CODE :"<<endl;
    cin>>bcode;
    cout<<"AUTHOR NAME :"<<endl;
    gets(author);
    cout<<"CATEGORY :"<<endl;
    gets(category);
    cout<<"DATE OF ENTRY "<<endl;
    {
    cout<<"DAY:"<<endl;
    cin>>doe.day;
    cout<<"MONTH :"<<endl;
    cin>>doe.month;
    cout<<"YEAR :"<<endl;
    cin>>doe.year;
    }
    cout<<"the current status of the book is unissued by default so enter 1"<<endl;
    cin>>issue;
    }
    void putdata(void)
    {
     int gdriver = EGA, gmode = EGAHI;
       int bkcol, maxcolor,color;
       initgraph(&gdriver, &gmode,"");
       maxcolor = getmaxcolor();
          bkcol=maxcolor=6;
          setbkcolor(bkcol);
          color=maxcolor;
          setcolor(color);
    cout<<" "<<bname<<" has the code "<<bcode<<endl;
    cout<<" written by "<<author<<endl;
    cout<<" is currently in the category "<<category<<endl;
    cout<<" is entered in library on "<<doe.day<<"."<<doe.month<<"."<<doe.year<<endl;
    cout<<" the current status of the book is "<<issue<<endl;
    getch();
    }
    
    char*getauthname()
    {
    return author;
    }
    
    int getbcode(void)
    {
    return bcode;
    }
    
    };
    
    book b1,b2;
    
    
    void book::modify(void)             //*to modify a book record*//
    {
    int gdriver = EGA, gmode = EGAHI;
    int bkcol, maxcolor,color;
       initgraph(&gdriver, &gmode,"");
       maxcolor = getmaxcolor();
          bkcol=maxcolor=2;
          setbkcolor(bkcol);
          color=maxcolor;
          setcolor(color);
    cout<<" "<<bname<<" has the code "<<bcode<<endl;
    cout<<"   written by "<<author<<endl;
    cout<<"   is currently in the category "<<category<<endl;
    cout<<"   is entered in library on "<<doe.day<<"."<<doe.month<<"."<<doe.year<<endl;
    cout<<"   the current status of the book is "<<issue<<endl;
    
    cout<<"enter new details"<<endl;
    int mbc;
    char an[100],cat[100],nm[100];
    date dot;
    cout<<"enter new details"<<endl;
    cout<<"enter the new book code:(enter 1 to retain old one)"<<endl;
    cin>>mbc;
    cout<<"enter the new name:(press '.' to retain old one)"<<endl;
    gets(nm);
    cout<<"enter the new author:(press '.' to retain old one)"<<endl;
    gets(an);
    cout<<"enter the new category:(press '.' to retain old one)"<<endl;
    gets(cat);
    if(strcmp(nm,".")!=0)
    strcpy(bname,nm);
    if(strcmp(an,".")!=0)
    strcpy(author,an);
    if(strcmp(cat,".")!=0)
    strcpy(category,cat);
    if(mbc!=1)
    bcode=mbc;
    }
    
    
    int searchbook(void)  //*to search a book*//
    {
    int gdriver = EGA, gmode = EGAHI;
    int bkcol, maxcolor,color;
       initgraph(&gdriver, &gmode,"");
       maxcolor = getmaxcolor();
          bkcol=maxcolor=5;
          setbkcolor(bkcol);
          color=maxcolor;
          setcolor(color);
    ifstream finbook;
    finbook.open("lib.dat",ios::in|ios::binary);
    finbook.seekg(0,ios::beg);
    int n,m,choice;
    char found='n';
    char*mc;
    cout<<"for searching through book code press 1 or by author name press 2"<<endl;
    cin>>choice;
    switch(choice)
    {
    case 1:
    {
    cout<<"enter the book code to be searched"<<endl;
    cin>>m;
    while(!finbook.eof())
    {
    finbook.read((char*) &b1,sizeof(b1));
    if(b1.getbcode()==m)
    {
    b1.putdata();
    getch();
    found='y';
    return b1.getbcode();
    finbook.close();
    mainmenu();
    }
    }
    if(found=='n')
    cout<<"above book is not present in library!!"<<endl;
    getch();
    finbook.close();
    return 0;
    mainmenu();
    }
    case 2:
    {
    cout<<"enter the author's name for searching book"<<endl;
    gets(mc);
    while(!finbook.eof())
    {
    finbook.read((char*)&b1,sizeof(b1));
    if(strcmpi(mc,b1.getauthname())==0)
    {
    b1.putdata();
    getch();
    found='y';
    return b1.getbcode();
    finbook.close();
    mainmenu();
    break;
    }
    }
    if(found=='n')
    cout<<"above book is not present in library!!"<<endl;
    getch();
    finbook.close();
    mainmenu();
    return 0;
    }
    }
    }
    
    
    void addbook(void)  //* add a book* //
    {
    int gdriver = EGA, gmode = EGAHI;
    int bkcol, maxcolor,color;
       initgraph(&gdriver, &gmode,"");
       maxcolor = getmaxcolor();
          bkcol=maxcolor=10;
          setbkcolor(bkcol);
          color=maxcolor;
          setcolor(color);
    ofstream foutbook("lib.dat",ios::app|ios::binary);
    {
    char ans='y';
    while(ans=='y')
    {
    b1.getdata();
    foutbook.write((char*) &b1,sizeof(b1));
    cout<<"record added to library.\n"<<endl;
    cout<<"do you want to enter more records?(y/n).."<<endl;
    cin>>ans;
    }
    }
    
    foutbook.close();
    mainmenu();
    }
    
    
    void deletebook(void)  //*to delete an existing book* //
    {
    int gdriver = EGA, gmode = EGAHI;
    int bkcol, maxcolor,color;
       initgraph(&gdriver, &gmode,"");
       maxcolor = getmaxcolor();
          bkcol=maxcolor=12;
          setbkcolor(bkcol);
          color=maxcolor;
          setcolor(color);
    ifstream finbook;
    ofstream foutbook;
    finbook.open("lib.dat",ios::in);
    foutbook.open("temp.dat",ios::out);
    int bcode;
    char found='f',confirm='n';
    cout<<"enter the book code of the book which has to be deleted from library"<<endl;
    cin>>bcode;
    while(!finbook.eof())
    {
    finbook.read((char*) &b1,sizeof(b1));
    if(b1.getbcode()==bcode)
    {
    b1.putdata();
    found='t';
    cout<<"want to delete,sure?(y/n).."<<endl;
    cin>>confirm;
    if(confirm=='n')
    foutbook.write((char*) &b1,sizeof(b1));
    }
    else
    foutbook.write((char*) &b1,sizeof(b1));
    }
    {
    if(found=='f')
    cout<<"record not found!!\n";
    getch();
    }
    getch();
    finbook.close();
    foutbook.close();
    remove("lib.dat");
    rename("temp.dat","lib.dat"); //* old file is removed and temp is renamed *//
    finbook.open("lib.dat",ios::in);
    cout<<"record updated"<<endl;
    cout<<"now the file contains"<<endl;
    getch();
    while(!finbook.eof())
    {
    finbook.read((char*)&b2,sizeof(b2));
    if(finbook.eof())
    break;
    b2.putdata();
    getch();
    
    }
    finbook.close();
    mainmenu();
    }
    
    
    void modifybook(void) //* to modify a book record in library* //
    {
    int bcd;
    long pos;
    char found='f';
    cout<<"enter the code of the book which has to be modified"<<endl;
    cin>>bcd;
    fstream fio("lib.dat",ios::in|ios::out|ios::binary);
    fio.seekg(0,ios::beg);
    while(!fio.eof())
    {
    pos=fio.tellg();
    fio.read((char*)&b1,sizeof(b1));
    if(b1.getbcode()==bcd)
    {
    b1.modify();
    fio.seekg(pos); //*file pointer positioned to beginning position of record being modified,before writing back modified record*//
    fio.write((char*)&b1,sizeof(b1));
    found='t';
    break;
    }
    }
    if(found=='f')
    cout<<"record not found!!"<<endl;
    fio.seekg(0);
    cout<<"now the file contains"<<endl;
    while(!fio.eof())
    {
    fio.read((char*) &b2,sizeof(b2));
    b2.putdata();
    getch();
    mainmenu();
    }
    }
    
    
    void dispallbook(void)
    {
    ifstream finbook;
    finbook.open("lib.dat",ios::in|ios::binary);
    finbook.seekg(0,ios::beg);
    cout<<"file contains"<<endl;
    while(!finbook.eof())
    {
    finbook.read((char*)&b2,sizeof(b2));
    if(finbook.eof())
    {
    break;
    }
    else
    b2.putdata();
    getch();
    }
    finbook.close();
    mainmenu();
    }
    
    
    class account
    {
    int id;
    char name[100];
    int status;
    address haddress;
    
    public:
    libdate doi,doer;
    
    int bid;
    
    libdate dor;
    
    int getid(void)
    {
    return id;
    }
    
    int getstatus(void)
    {
    return status;
    }
    
    void cstatusy(void)
    {
    status=1;
    }
    
    void cstatusn(void)
    {
    status=2;
    }
    
    
    void enterdata(void)    //*entering the data of user*//
    {
    cout<<"enter the name of the user"<<endl;
    gets(name);
    cout<<"enter the library ID"<<endl;
    cin>>id;
    cout<<"enter the address of the user"<<endl;
    {
    cout<<"enter the house no."<<endl;
    cin>>haddress.hno;
    cout<<"enter the area in which the user is currently living"<<endl;
    gets(haddress.area);
    cout<<"enter the city in which the user is currently living"<<endl;
    gets(haddress.city);
    cout<<"enter the pincode of the city"<<endl;
    cin>>haddress.pincode;
    }
    cout<<"enter the date of entry"<<endl;
    {
    cout<<"enter the day"<<endl;
    cin>>doer.day;
    cout<<"enter the month"<<endl;
    cin>>doer.month;
    cout<<"enter the year"<<endl;
    cin>>doer.year;
    }
    cout<<"defualt value of status is 1 so enter 1"<<endl;
    cin>>status;
    }
    
    
    void display(void)
    {
    int gdriver = EGA, gmode = EGAHI;
    int bkcol, maxcolor,color;
      initgraph(&gdriver, &gmode,"");
       maxcolor = getmaxcolor();
          bkcol=maxcolor=2;
          setbkcolor(bkcol);
          color=maxcolor;
          setcolor(color);
    cout<<name<<" has the library ID "<<id<<endl;
    cout<<" who currently lives in "<<endl;
    cout<<haddress.hno<<"  "<<haddress.area<<"  "<<haddress.city<<endl;
    cout<<haddress.pincode<<endl;
    }
    
    
    void modifyuser(void)
    {
    cout<<name<<"has the id"<<id<<"living in"<<haddress.hno<<" "<<haddress.area<<" "<<haddress.city<<" "<<haddress.pincode<<endl;
    cout<<"enter new details"<<endl;
    char nm[100];
    int idc;
    address ha;
    cout<<"enter the new name(press '.' to retain old one)"<<endl;
    gets(nm);
    cout<<"enter the new id(press 1 to retain old one)"<<endl;
    cin>>idc;
    cout<<"enter the new address"<<endl;
    {
    cout<<"enter the new homeno(press 2 to retain old one)"<<endl;
    cin>>ha.hno;
    cout<<"enter the new area(press '.' to retain old one)"<<endl;
    gets(ha.area);
    cout<<"enter the new city(press '.' to retain old one)"<<endl;
    gets(ha.city);
    cout<<"enter the new pincode.(press '3' to retain old one"<<endl;
    cin>>ha.pincode;
    }
    if(strcmp(nm,".")!=0)
    strcpy(name,nm);
    if(strcmp(ha.area,".")!=0)
    strcpy(haddress.area,ha.area);
    if(strcmp(ha.city,"."))
    strcpy(haddress.city,ha.city);
    if(idc!=1)
    id=idc;
    if(ha.hno!=2)
    haddress.hno=ha.hno;
    if(ha.pincode!=3)
    haddress.pincode=ha.pincode;
    }
    };
    account s1,s2;
    
    
    void adduser(void)    //*add a user*//
    {
    ofstream foutuser;
    foutuser.open("user.dat",ios::app|ios::binary);
    char ans='y';
    while(ans=='y')
    {
    s1.enterdata();
    foutuser.write((char*)&s1,sizeof(s1));
    cout<<"user added to library"<<endl;
    cout<<"do you want to enter more users?(y/n).."<<endl;
    cin>>ans;
    }
    foutuser.close();
    mainmenu();
    }
    
    
    void searchuser(void)  //*to search a user*//
    {
    ifstream finuser;
    finuser.open("user.dat",ios::in|ios::binary);
    finuser.seekg(0,ios::beg);
    int uid;
    char found='n';
    cout<<"enter the library ID of the user to be searched"<<endl;
    cin>>uid;
    while(!finuser.eof())
    {
    finuser.read((char*)&s1,sizeof(s1));
    if(s1.getid()==uid)
    {
    s1.display();
    getch();
    found='y';
    mainmenu();
    }
    }
    if(found=='n')
    cout<<"user not registered"<<endl;
    getch();
    finuser.close();
    mainmenu();
    }
    
    
    void deleteuser(void)
    {
    ifstream fio("user.dat",ios::in|ios::binary);
    ofstream file("temp.dat",ios::out|ios::binary);
    int uid;
    char found='f',confirm='n';
    cout<<"enter the ID of the user whom you want to delete"<<endl;
    cin>>uid;
    while(!fio.eof())
    {
    fio.read((char*) &s1,sizeof(s1));
    if(s1.getid()==uid)
    {
    s1.display();
    found='t';
    cout<<"want to continue sure(y/n).."<<endl;
    cin>>confirm;
    if(confirm=='n')
    file.write((char*)&s1,sizeof(s1));
    }
    else
    file.write((char*)&s1,sizeof(s1));
    }
    if(found=='f')
    cout<<"user not found!!"<<endl;
    getch();
    fio.close();
    file.close();
    remove("user.dat");
    rename("temp.dat","user.dat");
    fio.open("lib.dat",ios::in|ios::binary);
    cout<<"record updated"<<endl;
    cout<<"now the file contains"<<endl;
    getch();
    while(!fio.eof())
    {
    fio.read((char*) &s2,sizeof(s2));
    if(fio.eof())
    break;
    s2.display();
    getch();
    }
    mainmenu();
    fio.close();
    }
    
    
    void modifyaccount(void)
    {
    fstream fio("user.dat",ios::in|ios::out|ios::binary);
    int uid;
    long pos;
    char found='f';
    fio.seekg(0,ios::beg);
    cout<<"enter the id of the user whose record is to be modified"<<endl;
    cin>>uid;
    while(!fio.eof())
    {
    pos=fio.tellg();
    fio.read((char*)&s1,sizeof(s1));
    if(s1.getid()==uid)
    {
    s1.modifyuser();
    fio.seekg(pos);
    fio.write((char*)&s1,sizeof(s1));
    found='t';
    break;
    }
    }
    if(found=='f')
    cout<<"record not found!!"<<endl;
    fio.seekg(0);
    cout<<"now the user file contains"<<endl;
    while(!fio.eof())
    {
    fio.read((char*)&s2,sizeof(s2));
    s2.display();
    getch();
    }
    mainmenu();
    fio.close();
    }
    
    void issuebook(void)
    {
    char ch;
    int m,n,uid;
    int rec1=0,rec2=0;
    libdate temp;
    cout<<"Enter ur library ID"<<endl;
    cin>>uid;
    fstream iofile("user.dat",ios::in|ios::app|ios::binary);
    fstream ifile("lib.dat",ios::in|ios::app|ios::binary);
    while(!iofile.eof())
    {
    if(iofile.eof())
    {
    mainmenu();
    }
    iofile.read((char*)&s1,sizeof(s1));
    rec1++;
    if(uid==s1.getid())
    {
    n=s1.getstatus();
    if(n==2)
    {
    cout<<"you already have issued one book"<<endl;
    getch();
    mainmenu();
    }
    else
    cout<<".....Search the book you want to issue"<<endl;
    getch();
    int bbcode = searchbook();
    while(bbcode!=0)
    {
    cout<<"are u sure u want to take this book(y/n)"<<endl;
    cin>>ch;
    if(ch=='y'||ch=='Y')
    {
    while(!ifile.eof())
    {
    if(ifile.eof())
    {mainmenu();}
    ifile.read((char*)&b1,sizeof(b1));
    rec2++;
    if(bbcode==b1.getbcode())
    {
    m=b1.getissue();
    if(m==2)
    {
    cout<<"Already issued...\n";
    mainmenu();
    }
    else
    s1.bid=bbcode;
    cout<<"ENTER THE DATE OF ISSUE"<<endl;
    {
    cout<<"ENTER THE DAY"<<endl;
    cin>>temp.day;
    cout<<"ENTER THE MONTH"<<endl;
    cin>>temp.month;
    cout<<"ENTER THE YEAR"<<endl;
    cin>>temp.year;
    }
    s1.doi=temp;
    b1.cissuen();
    s1.cstatusn();
    iofile.seekg((rec1-1)*sizeof(s1),ios::beg);
    ifile.seekg((rec2-1)*sizeof(b1),ios::beg);
    ifile.write((char*)&b1,sizeof(book));
    iofile.write((char*)&s1,sizeof(account));
    cout<<" Status updated..\n";
    getch();
    }
    }
    ifile.close();
    mainmenu();
    }
    else
    {
    cout<<"SORRY u can search some other time"<<endl;
    ifile.close();
    iofile.close();
    getch();
    mainmenu();
    }
    }
    }
    else
    cout<<"WRONG ID ENTERED!!!..PLZ ENTER YOUR VALID ID"<<endl;
    iofile.close();
    getch();
    mainmenu();
    }
    iofile.close();
    }
    
    
    
    
    
    void returnbook(void)                  //* to return a book from user * //
    {
    int uid,bbcode;
    int m;
    libdate temp;
    m=b1.getissue();
    cout<<"ENTER UR LIBRARY ID"<<endl;
    cin>>uid;
    fstream iofile("user.dat",ios::in|ios::app|ios::binary);
    fstream ifile("lib.dat",ios::in|ios::app|ios::binary);
    while(iofile)
    {
    iofile.read((char*)&s1,sizeof(s1));
    if(uid==s1.getid())
    {
    cout<<"valid ID....."<<endl;
    cout<<"enter the book code of the book u want to return"<<endl;
    cin>>bbcode;
    while(ifile)
    {
    ifile.read((char*)&b1,sizeof(b1));
    if(bbcode==b1.getbcode())
    {
    cout<<"book found checking its status"<<endl;
    getch();
    if(m==2)
    {
    
    cout<<"calculating fine"<<endl;
    {
    int m,n,p;
    if(s1.dor.year==s1.doi.year)
    {
    if(s1.dor.month==s1.doi.month)
    {
    if(s1.dor.day-s1.doi.day<4)
    {
    cout<<"you do not have to pay any fine"<<endl;
    }
    else
    m=s1.dor.day-s1.doi.day;
    cout<<"you have to pay a fine of rs."<<m;
    }
    else
    {
    if(s1.dor.month-s1.doi.month==1)
    {
    n=30-s1.doi.day;
    if(n+s1.dor.day<4)
    {
    cout<<"you do not have to pay any fine"<<endl;
    }
    else
    cout<<"you have to pay a fine of rs."<<n+s1.dor.day<<endl;
    }
    else
    cout<<"you have to pay a fine of rs. 200"<<endl;
    }
    }
    else
    {
    if(s1.dor.year-s1.doi.year==1)
    {
    if((s1.doi.month==12)&&(s1.dor.month==1))
    {
    p=30-s1.doi.day;
    if(p+s1.dor.day<4)
    {
    cout<<"you do not have to pay any fine"<<endl;
    }
    else
    cout<<"you have to pay the fine of"<<p+s1.dor.day;
    }
    else
    cout<<"you have to pay the fine of rs. 200"<<endl;
    }
    else
    cout<<"you have to pay the fine of rs. 500"<<endl;
    }
    }
    cout<<"now changing the status of this book"<<endl;
    getch();
    b1.cissuey();
    s1.cstatusy();
    cout<<"ENTER THE DATE OF RETURN"<<endl;
    {
    cout<<"ENTER THE DAY"<<endl;
    cin>>temp.day;
    cout<<"ENTER THE MONTH"<<endl;
    cin>>temp.month;
    cout<<"ENTER THE YEAR"<<endl;
    cin>>temp.year;
    }
    s1.dor=temp;
    ifile.write((char*)&b1,sizeof(b1));
    iofile.write((char*)&s1,sizeof(s1));
    mainmenu();
    }
    else
    cout<<"error!this book is free to issue"<<endl;
    getch();
    mainmenu();
    }
    else
    cout<<"u haven't issued this book kindly check the book id again"<<endl;
    getch();
    mainmenu();
    }
    ifile.close();}
    else
    cout<<"WRONG USER ID ENTRED CHECK AGAIN"<<endl;
    getch();
    mainmenu();
    }
    iofile.close();
    }
    
    void record(void)
    {
    int m;
    int uid,ubcode;
    m=s1.getstatus();
    fstream iofile("user.dat",ios::in|ios::app|ios::binary);
    while(iofile)
    {
    iofile.read((char*)&s1,sizeof(s1));
    cout<<"Enter your valid library ID"<<endl;
    cin>>uid;
    if(uid==s1.getid())
    {
    cout<<"valid ID....checking ur record.."<<endl;
    getch();
    if(m==1)
    {
    cout<<"you have not taken any book currently"<<endl;
    getch();
    mainmenu();
    }
    else
    {
    cout<<"you have taken the following book"<<endl;
    getch();
    ubcode=s1.bid;
    ifstream ifile;
    ifile.open("lib.dat",ios::in|ios::binary);
    ifile.read((char*)&b1,sizeof(b1));
    if(ubcode==b1.getbcode())
    {
    b1.putdata();  
    getch();
    }
    else
    cout<<"!!ERROR!!"<<endl;
    getch();
    mainmenu();
    }
    }
    else
    cout<<"WRONG LIBRARY ID PLZ TRY AGAIN"<<endl;
    getch();
    mainmenu();
    }
    iofile.close();
    }
    
    
    
    void dispalluser(void)
    {
    ifstream fio("user.dat",ios::in|ios::binary);
    fio.seekg(0,ios::beg);
    cout<<" the file contains"<<endl;
    while(!fio.eof())
    {
    fio.read((char*)&s1,sizeof(s1));
    if(fio.eof())
    {
    break;
    }
    else
    s1.display();
    getch();
    }
    fio.close();
    }
    
    
    
    void mainmenu(void)
    {
    int m,n,mn,ch;
    int ans;
         int gdriver = EGA, gmode = EGAHI;
       int bkcol, maxcolor,color;
       char msg[80];
       initgraph(&gdriver, &gmode,"");
       maxcolor = getmaxcolor();
          bkcol=maxcolor=4;
          setbkcolor(bkcol);
          color=maxcolor;
          setcolor(color);
    
          gotoxy(25,5);
          cout<<"M A I N   M E N U";
          gotoxy(17,10);
          cout<<"1. BOOKS MENU";
          gotoxy(17,12);
          cout<<"2. ACCOUNT MENU";
          gotoxy(17,14);
          cout<<"3. USER MENU";
          gotoxy(17,16);
          cout<<"4. EXIT";
          gotoxy(40,24);
              cout<<"Enter Option(1-4):";
    
    cin>>m;
    
    switch(m)
    {
    
    case 1:
    {
     int gdriver = EGA, gmode = EGAHI;
       int bkcol, maxcolor,color;
       initgraph(&gdriver, &gmode,"");
       maxcolor = getmaxcolor();
          bkcol=maxcolor=2;
          setbkcolor(bkcol);
          color=maxcolor;
          setcolor(color);
    gotoxy(20,4);
    cout<<" 1 : ADD A BOOK";
    gotoxy(20,6);
    cout<<" 2 : SEARCH A BOOK";
    gotoxy(20,8);
    cout<<" 3 : MODIFY A BOOK'S RECORD";
    gotoxy(20,10);
    cout<<" 4 : DELETE";
    gotoxy(20,12);
    cout<<" 5 : DISPLAY ALL ";
    gotoxy(20,14);
    cout<<" 6 : RETURN TO MAIN MENU"<<endl;
    gotoxy(20,16);
    cout<<"ENTER OPTION(1-7)"<<endl;
    cin>>n;
    
    switch(n)
    {
    case 1:
    {
    addbook();
    break;
    }
    case 2:
    {
    searchbook();
    break;
    }
    case 3:
    {
    modifybook();
    break;
    }
    case 4:
    {
    deletebook();
    break;
    }
    case 5:
    {
    dispallbook();
    break;
    }
    case 6:
    {
    mainmenu();
    }
    default: cout<<"INVALID ENTRY!!"<<endl;
    }
    break;
    }
    
    case 2:
    {
     int gdriver = EGA, gmode = EGAHI;
       int bkcol, maxcolor,color;
       initgraph(&gdriver, &gmode,"");
       maxcolor = getmaxcolor();
          bkcol=maxcolor=11;
          setbkcolor(bkcol);
          color=maxcolor;
          setcolor(color);
    cout<<"1 : CREATE NEW ACCOUNT"<<endl;
    cout<<"2 : SEARCH A USER"<<endl;
    cout<<"3 : MODIFY A USER'S INFO"<<endl;
    cout<<"4 : DELETE A USER"<<endl;
    cout<<"5 : DISPLAY ALL USERS"<<endl;
    cout<<"6 : RETURN TO MAIN MENU"<<endl;
    cout<<"ENTER OPTION(1-6)"<<endl;
    cin>>mn;
    
    switch(mn)
    {
    
    case 1:
    {
    adduser();
    break;
    }
    case 2:
    {
    searchuser();
    break;
    }
    case 3:
    {
    modifyaccount();
    break;
    }
    case 4:
    {
    deleteuser();
    break;
    }
    case 5:
    {
    dispalluser();
    break;
    }
    case 6:
    {
    mainmenu();
    }
    default : cout<<"INVALID ENTRY!!"<<endl;
    }
    break;
    }
    
    case 3:
    {
     int gdriver = EGA, gmode = EGAHI, errorcode;
       int bkcol, maxcolor,color;
       initgraph(&gdriver, &gmode,"");
       maxcolor = getmaxcolor();
          bkcol=maxcolor=9;
          setbkcolor(bkcol);
          color=maxcolor;
          setcolor(color);
    cout<<"welcome to user's manual"<<endl;
    cout<<"1: ISSUE BOOK"<<endl;
    cout<<"2: RETURN BOOK"<<endl;
    cout<<"3: CURRENT RECORD"<<endl;
    cout<<"4:RETURN TO MAIN MENU"<<endl;
    cout<<"ENTER OPTION(1-4)"<<endl;
    cin>>ch;
    switch(ch)
    {
    case 1:
    {
    issuebook();
    break;
    }
    case 2:
    {
    returnbook();
    break;
    }
    case 3:
    {
    record();
    break;
    }
    case 4:
    {
    mainmenu();
    }
    default: cout<<"INVALID ENTRY!!"<<endl;
    }
    break;
    }
    
    case 4:
    {
    cout<<"press any key to continue"<<endl;
    exit(0);
    break;
    }
    default:cout<<"INVALID ENTRY!!"<<endl;
    }
    }
    
    
    
    void main()
    {
    clrscr();
    mainmenu();     
    getch();
    }
     
    Last edited by a moderator: Jan 24, 2009

Share This Page

  1. This site uses cookies to help personalise content, tailor your experience and to keep you logged in if you register.
    By continuing to use this site, you are consenting to our use of cookies.
    Dismiss Notice