Vous êtes sur la page 1sur 27

CONTENTS

Certificate
Acknowledgement
Working description of project
Header files and their purpose
Files generated

Coding & outputs

Bibliography

ACKNOWLEDGEMENT
It would be my 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

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

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.Hfor C++ streams I/O

manipulators

FILES GENERATED

DATA FILES
BOOK.DAT

PROGRAM FILE
BOOK.CPP

OBJECT FILE
BOOK.OBJ

EXECUTION FILE
BOOK.EXE

WORKING
DESCRIPTION OF

PROJECT
This program is designed to keep the friends
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

CODING

//*******************************************************
// 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;
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=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,"*NAVI ARORA");
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
//
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
{
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')
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);
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;
}}

OUTPUTS

BOOK-SHOP

Developed By: MANPREET KAUR

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 BOOKS 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

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 BOOKS RECORD
6. TO EXIT
ENTER UR CHOICE:2

Book: R.D.OBJECTIVE
Author: R.D.SHARMA
Copies:20

Do You Want To Continue Y

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 BOOKS RECORD
6. TO EXIT
ENTER UR CHOICE:3

Name: R.D.OBJECTIVE
Author: R.D.SHARMA
Copies:20

Do You Want To Continue Y

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 BOOKS 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

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

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 BOOKS 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

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 BOOKS RECORD
6. TO EXIT
ENTER UR CHOICE:6

NOW YOU WANT TO GO


Y

THANKS FOR VISITING

BIBLIOGRAPHY

COMPUTER SCIENCE IN C++ BY:

MANPREET KAUR

Vous aimerez peut-être aussi