You are on page 1of 18

Book Shop

management system
Submitted by:_Name : kandarp gautam
Class: xii-j
Roll no. : 17
//************************************************
******* //
INCLUDED HEADER FILES
//************************************************
*******
#include"stdio.h"
#include"conio.h"
#include"fstream.h"
#include"stdlib.h"
#include"dos.h"
#include"string.h"
#include"graphics.h"

#include"iomanip.h"
//************************************************
******* //
CLASS NAME : BOOK
//************************************************
*******
class book { public: char name[20];
char author[20];
int a;
void getdata();
void show();
};
//************************************************
******* //
FUNCTIONS TO GET AND SHOW DATA
//************************************************
*******
void book::getdata()
{

cout< <"\n\" \"ENTER DETAILS ABOUT BOOK U


WANT TO PURCHASE\" :\"";
cout<<"\n\n\n\t\tEnter Name Of Book :\t";
cin>>name;
cout< <"\n\t\tEnter Name Of Author :\t";
cin>>author;
fflush(stdin);
cout< <"\n\t\tEnter No. Of Copies :\t";
cin>>a;
}
void book::show()
{
cout< <"BOOK :"<=240;y=y10,x[0]=x[0]+13,x[2]=x[2]+6,x[1]+=11,x[3]=4,x[4]-=9)
{
fillellipse(x[0],y,20,20);
setfillstyle(1,GREEN);
fillellipse(x[1],y,20,20);
setfillstyle(1,YELLOW);
fillellipse(x[2],y+10,20,20);

setfillstyle(1,WHITE);
fillellipse(300,y-15,20,20);
setfillstyle(1,6);
fillellipse(x[3],y-5,20,20);
setfillstyle(1,BLUE);
fillellipse(x[4],y+20,20,20);
setfillstyle(1,CYAN);
clearviewport();
for(int c=440;c<480;++c)
{
setlinestyle(0,1,3);
setcolor(BLACK);
line(0,c,325,480);
line(680,c,325,480);
}
delay(20);
}
for (int c=0;c<150;++c)
{
setcolor(BLACK);

fillellipse(325,240,c*1.5,c);
delay(10);
}
setcolor(BLACK);
settextstyle(7,0,5);
outtextxy(115,200,"B O O K - S H O P");
getch();
clearviewport();
}
void main()
{
clrscr();
int gdriver=DETECT,gmode;
initgraph(&gdriver,&gmode,"\\tc\\bgi");
graph();
rectangle(10,10,630,470);
setbkcolor(RED);
rectangle(10,10,630,470);
settextstyle(GOTHIC_FONT,0,4);
setcolor(WHITE);

outtextxy(30,35,"Developed By:-");
settextstyle(10,0,3);
outtextxy(150,100,"kandarp gautam");
getch();
char s;
book b1;
z: fstream f;
f.open("book",ios::in|ios::out|ios::app|ios::ate|
ios::binary);
clearviewport();
settextstyle(10,HORIZ_DIR,3);
setbkcolor(GREEN);
rectangle(10,10,630,470);
outtextxy(100,15,"WHAT DO U WANT TO DO:");
settextstyle(SANS_SERIF_FONT,0,3);
outtextxy(250,100,"1 . TO BUY");
outtextxy(250,150,"2 . TO SHOW ALL BOOKS");
outtextxy(250,200,"3 . TO CHECK AVAILABILITY");
outtextxy(250,250,"4 . TO MODIFY");
outtextxy(250,300,"5 . TO DELETE");
outtextxy(250,350,"6 . TO EXIT");

int a; settextstyle(7,0,5);
outtextxy(20,400, "ENTER UR CHOICE:");
f.seekg(0);
gotoxy(55,25);
cin>>a;
char x;
gotoxy(1,1);
switch (a)
{
//************************************************
******* //
CASE : 1
//

DETAILS : TO ADD A BOOKS RECORD

//************************************************
*******
case 1: gotoxy(1,1);
clearviewport();
rectangle(10,10,630,470);
setbkcolor(RED);
textbackground(13);

textcolor(6);
clrscr();
fstream f;
f.open("book",ios::in|ios::out|ios::ate|ios::app|
ios::binary);
char ans;
b1.getdata();
f.write((char *)&b1,sizeof(b1));
getch();
settextstyle(7,0,1);
outtextxy(250,410,"Do You Want To Continue:");
ans=getchar();
if(ans=='Y' || ans=='y') goto z;
else break;
//************************************************
******* //
CASE :2 //
RECORDS

DETAILS : TO SHOW ALL BOOKS

//************************************************
*******
case 2:

{
clearviewport();
rectangle(10,10,630,470);
setbkcolor(LIGHTBLUE);
textbackground(3);
textcolor(6);
cout< <"\n\n";
fstream f;
f.open("book",ios::in|ios::out|ios::ate|ios::app|
ios::binary);
char ans;
f.seekg(0);
int ctr=0;
while(f.read((char *)&b1,sizeof(b1)) )
{
ctr=ctr+1;
if(ctr==8)
{
getchar();
clrscr();
ctr=0;

}
b1.show();
if(f.eof()==1)
{
break;
}
}
f.close();
settextstyle(7,0,1);
outtextxy(250,410,"Do You Want To Continue:");
cin>>ans;
if(ans=='y'|| ans=='Y') goto z;
else
{
closegraph();
exit(1);
}
}
//************************************************
******* //

CASE : 3 //DETAILS : TO CHECK AVAILABILITY


//************************************************
*******
case 3:
{
gotoxy(60,25);
clearviewport();
rectangle(10,10,630,470);
setbkcolor(DARKGRAY);
textbackground(3);
textcolor(5);
clrscr();
char ans;
ifstream f;
book b1;
char name[20];
char author[20];
int a;
f.open("book",ios::in|ios::binary);
cout< <"\n\n\n Enter book name whose record
to be seen :";

cin>>name;
do
{
f.read((char *)&b1,sizeof(b1));
if(f.eof()==1)
{
break;
}
if(strcmp(b1.name,name)==0)
{
cout< <"\n Name :"<>name;
do
{
f.read((char *)&b1,sizeof(b1));
if(f.eof()==1)
{
break;
}
if(strcmp(b1.name,name)==0)
{

cout< <"\n Name :"<>name;


cout< <"\n Enter author name :";
cin>>author;
cout< <"\n Enter no. of copies :";
cin>>a;
strcpy(b1.name,name);
strcpy(b1.author,author);
b1.a=a;
int l=f.tellg();
f.close();
f.open("book",ios::out|ios::binary|ios::ate);
f.seekg(l-sizeof(b1));
f.write((char *)&b1,sizeof(b1));
}
}
while(f);
f.close();
settextstyle(7,0,1);
outtextxy(250,410,"Do You Want To Continue:");
ans=getchar();

if(ans=='Y'||ans=='y')
{
goto z;
}
else
break;
}
//************************************************
******* //
CASE : 5 // DETAILS : TO DELETE A BOOKS
RECORD
//************************************************
*******
case 5:
{
clearviewport();
rectangle(10,10,630,470);
setbkcolor(BROWN);
setcolor(WHITE);
char name[20];
f.close();

f.open("video",ios::in|ios::ate|ios::binary);
settextstyle(7,0,3);
outtextxy(200,30,"DELETING:-");
cout< <"\n\n\n\n\n\n Enter The Name U Want To
delete:\t";
fflush(stdin);
cin>>name;
f.seekg(0);
int k=0;
do
{
f.close();
f.open("book",ios::in|ios::ate|ios::binary);
f.seekg(k); fflush(stdin);
f.read((char *)&b1,sizeof(b1));
if(f.eof())
break;
if(strcmp(b1.name,name)==0)
{
k+=46;
continue;

}
else
{
f.close();
f.open("book2",ios::out|ios::ate|ios::binary);
f.write((char*)&b1, sizeof b1);
k+=46;
}
}
while(f);
f.close();
remove ("book");
rename ("book2","book");
cout< <"\n\n\n\n\n\tPress Any Key...";
getch();
goto z;
}
//************************************************
******* //
CASE : 6 // DETAILS : TO EXIT

//************************************************
*******
case 6:
{
clearviewport();
rectangle(10,10,630,470);
setbkcolor(BROWN);
setcolor(BLUE);
settextstyle(8,0,4);
outtextxy(150,200,"NOW YOU WANT TO GO");
if(getch())
{
fflush(stdin);
clearviewport();
rectangle(10,10,630,470);
setbkcolor(LIGHTBLUE);
setcolor(RED);
window(10,10,40,11);
settextstyle(8,0,4);
outtextxy(150,200,"\"THANKS FOR VISITING\"");
getch();

closegraph();
exit(1);
}
else
{
goto z;
}
}
default:
goto z;
}
}

You might also like