Skip to main content

Featured

functions in Python

C++ Project on Bookshop


//*******************************************************
//      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=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);
   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,"Devendra Singh aka devsir");
  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 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();
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 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)
{ 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;
} }

Comments

  1. Thank you dear Bharath for your encouraging words. As and when I get time, I try to post something relevant to IT students or IT World or programming.

    ReplyDelete

Post a Comment

Popular Posts