You are on page 1of 27

www.bOtskOOl.

com

COMPUTER SCIENCE
PROJECT FILE
ON
BOOK-SHOP

PROJECT PREPARED BY:


Navi Arora
XII
Session: 2008-2009
Board’s Roll Number: 6229340
Mother Divine Sr. Sec. Public School
www.bOtskOOl.com

TABLE OF CONTENTS

Certificate

Acknowledgement

Working description of project

Header files and their purpose

Files generated

Coding & outputs

Bibliography
www.bOtskOOl.com

ACKNOWLEDGEMENT

It would be my utmost pleasure to express my


sincere thanks to My Computer Science Teacher
Ms. Ramanjeet Kaur in providing a helping
hand in this project. Her unflagging patience,
creativity and immense knowledge that she
shared with me have proved highly beneficial to
me and have made my Project File both possible
and successful.

Navi Arora
XII
www.bOtskOOl.com

CERTIFICATE
This is to certify that Navi Arora of class XII has
completed this project titled “Book-Shop” under
my guidance & this project may be considered
as the part of the practical exam of AISSCE
conducted by CBSE.

Ms. Ramanjeet Kaur


Computer Science
Mother Divine Public School
www.bOtskOOl.com

HEADER FILES USED


AND THEIR PURPOSE

1. FSTREAM.H – for file handling, cin and cout


2. PROCESS.H – for exit() function
3. CONIO.H – for clrscr() and getch() functions
4. STDIO.H – for standard I/O operations
5. DOS.H – for execution of program
6. STRING.H – for string handling
7. GRAPHICS.H – for graphical display
8. IOMANIP.H–for C++ streams I/O manipulators
www.bOtskOOl.com

FILES GENERATED

DATA FILES
BOOK.DAT

PROGRAM FILE
BOOK.CPP

OBJECT FILE
BOOK.OBJ

EXECUTION FILE
BOOK.EXE
www.bOtskOOl.com

WORKING
DESCRIPTION OF

PROJECT
This program is designed to keep the friend’s
record.

This program consists of six options as follows

1.TO ADD
2.TO SHOW
3.TO SEARCH
4.TO MODIFY
5.TO DELETE
6.TO EXIT
www.bOtskOOl.com

CODING
www.bOtskOOl.com

//*******************************************************
// PROJECT BOOK-SHOP
//*******************************************************

//*******************************************************
// 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;
www.bOtskOOl.com

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 :"<<name;
cout<<"\nAUTHOR :"<<author;
cout<<"\nCOPIES :"<<a;
}

//*******************************************************
// TO INVOKE WELCOME SCREEN, CREDIT SCREEN
// & ENDING SCREEN
//*******************************************************

void graph()
{
for(int y=0;y<440;y=y+10)
{
fillellipse(50,y,50,50);setfillstyle(2,GREEN);
fillellipse(100,y,50,50); setfillstyle(3,YELLOW);
fillellipse(200,y+10,50,50);setfillstyle(2,WHITE);
fillellipse(300,y-15,50,50); setfillstyle(3,6);
fillellipse(400,y-5,50,50); setfillstyle(2,BLUE);
fillellipse(500,y+20,50,50); setfillstyle(3,CYAN);
clearviewport();

for(int c=440;c<480;++c)
{
setlinestyle(0,1,3);setcolor(WHITE);

line(0,c,325,480);
line(680,c,325,480); }
delay(20);
}

int x[5];
for(x[0]=50,x[1]=100,x[2]=200,x[3]=400,x[4]=500,y=450;y>=240;y=y-
10,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);
www.bOtskOOl.com

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,"*NAVI ARORA");
getch();
char s;
book b1;
z:

fstream f;
f.open("book",ios::in|ios::out|ios::app|ios::ate|ios::binary);
clearviewport();
www.bOtskOOl.com

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 BOOK’S 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();
www.bOtskOOl.com

if(ans=='Y' || ans=='y')
goto z;
else
break;

//*******************************************************
// CASE :2
// DETAILS : TO SHOW ALL BOOKS’ RECORDS
//*******************************************************

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
{
www.bOtskOOl.com

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 :"<<b1.name;
cout<<"\n author :"<<b1.author;
cout<<"\n copies :"<<b1.a;
getchar();
}
}
while(f);
f.close();
// a:
settextstyle(7,0,1);
outtextxy(250,410,"Do You Want To Continue:");
ans=getchar();
if(ans=='Y'||ans=='y')
www.bOtskOOl.com

goto z;
else
break;
}

//*******************************************************
// CASE :4
// DETAILS : TO MODIFY A RECORD
//*******************************************************

case 4:
{
clearviewport();
rectangle(10,10,630,470);
setbkcolor(BROWN);
setcolor(WHITE);
clrscr();
char ans;
fstream f; book b1;
char name[20]; char author[20]; int a;
f.open("book",ios::in|ios::binary);
cout<<"\n";
cout<<" Enter book name whose record to be changed :";
cin>>name;
do
{ f.read((char *)&b1,sizeof(b1));
if(f.eof()==1) {break;}
if(strcmp(b1.name,name)==0)
{
cout<<"\n Name :"<<b1.name;
cout<<"\n Author :"<<b1.author;
cout<<"\n Copies :" <<b1.a;
getchar();
cout<<"\n Enter New Values" ;
cout<<"\n\n Enter the book name :";
cin>>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);
www.bOtskOOl.com

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 BOOK’S 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)
www.bOtskOOl.com

{ 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;
www.bOtskOOl.com

}}
default:
goto z;
}}

OUTPUTS
www.bOtskOOl.com

BOOK-SHOP

Developed By:-

Ж NAVI ARORA
www.bOtskOOl.com

WHAT DO U WANT TO DO:

1. TO BUY

2. TO SHOW ALL BOOKS

3. TO CHECK AVAILABILITY

4. TO MODIFY A RECORD

5. TO DELETE A BOOK’S RECORD

6. TO EXIT

ENTER UR CHOICE:1

ENTER DETAILS ABOUT BOOK U WANT TO PURCHASE:

Enter Name Of Book: R.D.OBJECTIVE

Enter Name Of Author: R.D.SHARMA

Enter No. Of Copies:20

Do You Want To Continue Y


www.bOtskOOl.com

WHAT DO U WANT TO DO:

1. TO BUY

2. TO SHOW ALL BOOKS

3. TO CHECK AVAILABILITY

4. TO MODIFY A RECORD

5. TO DELETE A BOOK’S RECORD

6. TO EXIT

ENTER UR CHOICE:2

Book: R.D.OBJECTIVE

Author: R.D.SHARMA

Copies:20

Do You Want To Continue Y


www.bOtskOOl.com

WHAT DO U WANT TO DO:

1. TO BUY

2. TO SHOW ALL BOOKS

3. TO CHECK AVAILABILITY

4. TO MODIFY A RECORD

5. TO DELETE A BOOK’S RECORD

6. TO EXIT

ENTER UR CHOICE:3

Name: R.D.OBJECTIVE

Author: R.D.SHARMA

Copies:20

Do You Want To Continue Y


www.bOtskOOl.com

WHAT DO U WANT TO DO:

1. TO BUY

2. TO SHOW ALL BOOKS

3. TO CHECK AVAILABILITY

4. TO MODIFY A RECORD

5. TO DELETE A BOOK’S RECORD

6. TO EXIT

ENTER UR CHOICE:4

Enter book name whose record to be changed : RD

Name: R.D.OBJECTIVE

Author: R.D.SHARMA

Copies:20
www.bOtskOOl.com

Enter new values

Enter the Book Name: R.D.OBJECTIVE

Enter Author Name: R.D.SHARMA

Enter No. Of Copies:35

Do You Want To Continue Y


www.bOtskOOl.com

WHAT DO U WANT TO DO:

1. TO BUY

2. TO SHOW ALL BOOKS

3. TO CHECK AVAILABILITY

4. TO MODIFY A RECORD

5. TO DELETE A BOOK’S RECORD

6. TO EXIT

ENTER UR CHOICE:5

Enter The Name U want to delete : R.D.Sharma

Press any key…

Do You Want To Continue Y


www.bOtskOOl.com

WHAT DO U WANT TO DO:

1. TO BUY

2. TO SHOW ALL BOOKS

3. TO CHECK AVAILABILITY

4. TO MODIFY A RECORD

5. TO DELETE A BOOK’S RECORD

6. TO EXIT

ENTER UR CHOICE:6

NOW YOU WANT TO GO


Y

“THANKS FOR VISITING”


www.bOtskOOl.com

BIBLIOGRAPHY

COMPUTER SCIENCE IN C++ BY :–

SUMITA ARORA
Websites:
 www.bOtskOOl.com

You might also like