0% found this document useful (0 votes)
59 views50 pages

Coading

The document describes a C++ program for train reservation. It defines classes for trains and tickets with attributes like train number, seats available, passenger name etc. Methods are used to input train details, book and display tickets, and cancel reservations. The classes and methods demonstrate OOP concepts for modeling the reservation system.

Uploaded by

Rahul Singh
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
59 views50 pages

Coading

The document describes a C++ program for train reservation. It defines classes for trains and tickets with attributes like train number, seats available, passenger name etc. Methods are used to input train details, book and display tickets, and cancel reservations. The classes and methods demonstrate OOP concepts for modeling the reservation system.

Uploaded by

Rahul Singh
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 50

CODING

1|Page
//PROGRAM - TRAIN RESERVATION

#include<iostream.h>

#include<conio.h>

#include<string.h>

#include<dos.h>

#include<stdio.h>

#include<fstream.h>

#include<process.h>

#include<stdlib.h>

class train

private :

int trainno,nofafseat,nofasseat,noffsseat,nofacseat,nofssseat;

char trainname[60],startingpoint[60],destination[60];

public :

train()

trainno=0;

nofafseat=0;

nofasseat=0;

noffsseat=0;

nofacseat=0;

nofssseat=0;

strcpy(trainname,"\0");

strcpy(startingpoint,"\0");

strcpy(destination,"\0");

2|Page
}

void input(); //To input the details

void display(); //To display the details

int returntr();

int returnaf();

int returnas();

int returnfs();

int returnac();

int returnss();

}tr;

int train::returntr()

return trainno;

int train::returnaf()

return nofafseat;

int train::returnas()

return nofasseat;

int train::returnfs()

return noffsseat;

int train::returnac()

3|Page
{

return nofacseat;

int train::returnss()

return nofssseat;

void train::input()

clrscr();

gotoxy(10,10);

cout<<"ENTER THE TRAIN NUMBER ";

gotoxy(57,10);

cin>>trainno;

gotoxy(10,12);

cout<<"ENTER THE NUMBER OF A/C FIRST CLASS SEATS";

gotoxy(57,12);

cin>>nofafseat;

gotoxy(10,14);

cout<<"ENTER THE NUMBER OF A/C SECOND CLASS SEATS";

gotoxy(57,14);

cin>>nofasseat;

gotoxy(10,16);

cout<<"ENTER THE NUMBER OF FIRST CLASS SLEEPER SEATS";

gotoxy(57,16);

cin>>noffsseat;

gotoxy(10,18);

4|Page
cout<<"ENTER THE NUMBER OF A/C CHAIR CAR SEATS";

gotoxy(57,18);

cin>>nofacseat;

gotoxy(10,20);

cout<<"ENTER THE NUMBER OF SECOND CLASS SLEEPER SEATS";

gotoxy(57,20);

cin>>nofssseat;

gotoxy(10,22);

cout<<"ENTER THE TRAIN NAME";

gotoxy(57,22);

gets(trainname);

gotoxy(10,24);

cout<<"ENTER THE STARTING POINT ";

gotoxy(57,24);

gets(startingpoint);

gotoxy(10,26);

cout<<"ENTER THE DESTINATION ";

gotoxy(57,26);

gets(destination);

void train::display ()

clrscr();

gotoxy(10,10);

cout<<"TRAIN NUMBER ";

gotoxy(47,10);

cout<<trainno;

5|Page
gotoxy(10,12);

cout<<"TRAIN NAME ";

gotoxy(47,12);

puts(trainname);

gotoxy(10,14);

cout<<"NO OF A/C FIRST CLASS SEATS ";

gotoxy(47,14);

cout<<nofafseat;

gotoxy(10,16);

cout<<"NO OF A/C SECOND CLASS SEATS ";

gotoxy(47,16);

cout<<nofasseat;

gotoxy(10,18);

cout<<"NO OF FIRST CLASS SLEEPER SEATS ";

gotoxy(47,18);

cout<<noffsseat;

gotoxy(10,20);

cout<<"NO OF A/C CHAIR CLASS SEATS ";

gotoxy(47,20);

cout<<nofacseat;

gotoxy(10,22);

cout<<"NO OF SECOND CLASS SLEEPER SEATS ";

gotoxy(47,22);

cout<<nofssseat;

gotoxy(10,24);

cout<<"STARTING POINT ";

gotoxy(47,24);

6|Page
puts(startingpoint);

gotoxy(10,26);

cout<<"DESTINATION ";

gotoxy(47,26);

puts(destination);

gotoxy(10,28);

cout<<"PRESS ANY KEY TO CONTINUE ";

getch();

class tickets

int resno,toaf,nofaf,toas,nofas,tofs,noffs,toac,nofac,toss,nofss,age;

char status[40],name[40];

public:

tickets();

void reservation(); //For ticket reservation

void cancellation(); //For ticket cancellation

int ret();

void display(); //To display reservation details

}tick;

tickets::tickets()

resno=0;

toaf=0;

nofaf=0;

toas=0;

nofas=0;

7|Page
tofs=0;

noffs=0;

toac=0;

nofac=0;

toss=0;

nofss=0;

age=0;

strcpy(status,"\0");

strcpy(name,"\0");

int tickets::ret()

return resno;

void tickets::display()

int f=0;

clrscr();

ifstream fn("[Link]",ios::out);

[Link](0);

if(!fn)

cout<<"ERROR IN THE FILE ";

X:

gotoxy(10,10);

cout<<"ENTER THE RESERVATION NO ";

8|Page
gotoxy(10,12);

int n;

cin>>n;

while(![Link]())

[Link]((char*)&tick,sizeof(tick));

gotoxy(10,10);

if(n==resno)

clrscr();

f=1;

gotoxy(10,10);

cout<<"NAME ";

gotoxy(30,10) ;

cout<<name;

gotoxy(10,12);

cout<<"AGE ";

gotoxy(30,12);

cout<<age;

gotoxy(10,14);

cout<<"PRESENT STATUS ";

gotoxy(30,14);

cout<<status;

gotoxy(10,16);

cout<<"RESERVATION NUMBER ";

gotoxy(30,16);

cout<<resno;

9|Page
gotoxy(10,18);

cout<<"PRESS ANY KEY TO CONTINUE ";

getch();

if(f==0)

clrscr();

gotoxy(10,10);

cout<<"UNRECOGINIZED RESERVATION NO !!! WANNA RETRY ?(Y/N) ";

char a;

gotoxy(10,12);

cin>>a;

if(a=='y'||a=='Y')

clrscr();

goto X;

else

gotoxy(10,12);

cout<<"PRESS ANY KEY TO CONTINUE";

getch();

[Link]();

10 | P a g e
void tickets::reservation()

clrscr();

gotoxy(10,10);

cout<<"RESERVATION ";

gotoxy(10,12);

cout<<"ENTER THE TRAIN NO: ";

int tno,f=0;

cin>>tno;

ofstream file;

ifstream fin("[Link]",ios::out);

[Link](0);

if(!fin)

clrscr();

gotoxy(10,10);

cout<<"ERROR IN THE FILE ";

else

clrscr();

while(![Link]())

[Link]((char*)&tr,sizeof(tr));

int z;

z=[Link]();

if(tno==z)

11 | P a g e
{

f=1;

nofaf=[Link]();

nofas=[Link]();

noffs=[Link]();

nofac=[Link]();

nofss=[Link]();

if(f==1)

[Link]("[Link]",ios::app);

S:

clrscr();

gotoxy(10,10);

cout<<"NAME:";

gets(name);

gotoxy(10,12);

cout<<"AGE:";

cin>>age;

clrscr();

gotoxy(10,10);

cout<<"SELECT THE CLASS WHICH YOU WISH TO TRAVEL";

gotoxy(10,12);

cout<<"1.A/C FIRST CLASS " ;

gotoxy(10,14);

cout<<"2.A/C SECOND CLASS " ;

12 | P a g e
gotoxy(10,16);

cout<<"[Link] CLASS SLEEPER " ;

gotoxy(10,18);

cout<<"4.A/C CHAIR CAR " ;

gotoxy(10,20);

cout<<"[Link] CLASS SLEEPER ";

gotoxy(10,22);

int c;

cin>>c;

switch(c)

case 1:toaf++;

resno=rand();

if((nofaf-toaf)>0)

strcpy(status,"confirmed");

gotoxy(10,24) ;

cout<<"STATUS";

gotoxy(30,24);

puts(status);

gotoxy(10,26);

cout<<"RESERVATION NO";

gotoxy(30,26);

cout<<resno;

getch();

[Link]((char*)&tick,sizeof(tick));

break;

13 | P a g e
}

else

strcpy(status,"pending");

gotoxy(10,24);

cout<<"STATUS";

gotoxy(30,24);

puts(status);

gotoxy(10,26);

cout<<"RESERVATION NO";

gotoxy(30,26);

cout<<resno;

getch();

[Link]((char*)&tick,sizeof(tick));

break;

case 2:toas++;

resno=rand();

if((nofas-toas)>0)

strcpy(status,"confirmed");

gotoxy(10,24) ;

cout<<"STATUS";

gotoxy(30,24);

puts(status);

gotoxy(10,26);

cout<<"RESERVATION NO";

14 | P a g e
gotoxy(30,26);

cout<<resno;

getch();

[Link]((char*)&tick,sizeof(tick));

break;

else

strcpy(status,"pending");

gotoxy(10,24);

cout<<"STATUS";

gotoxy(30,24);

puts(status);

gotoxy(10,26);

cout<<"RESERVATION NO";

gotoxy(30,26);

cout<<resno;

getch();

[Link]((char*)&tick,sizeof(tick));

break;

case 3:tofs++;

resno=rand();

if((noffs-tofs)>0)

strcpy(status,"confirmed");

gotoxy(10,24) ;

15 | P a g e
cout<<"STATUS";

gotoxy(30,24);

puts(status);

gotoxy(10,26);

cout<<"RESERVATION NO";

gotoxy(30,26);

cout<<resno;

getch();

[Link]((char*)&tick,sizeof(tick));

break;

else

strcpy(status,"pending");

gotoxy(10,24);

cout<<"STATUS";

gotoxy(30,24);

puts(status);

gotoxy(10,26);

cout<<"RESERVATION NO";

gotoxy(30,26);

cout<<resno;

getch();

[Link]((char*)&tick,sizeof(tick));

break;

case 4:toac++;

16 | P a g e
resno=rand();

if((nofac-toac)>0)

strcpy(status,"confirmed");

gotoxy(10,24) ;

cout<<"STATUS";

gotoxy(30,24);

puts(status);

gotoxy(10,26);

cout<<"RESERVATION NO";

gotoxy(30,26);

cout<<resno;

getch();

[Link]((char*)&tick,sizeof(tick));

break;

else

strcpy(status,"pending");

gotoxy(10,24);

cout<<"STATUS";

gotoxy(30,24);

puts(status);

gotoxy(10,26);

cout<<"RESERVATION NO";

gotoxy(30,26);

cout<<resno;

17 | P a g e
getch();

[Link]((char*)&tick,sizeof(tick));

break;

case 5:toss++;

resno=rand();

if((nofss-toss)>0)

strcpy(status,"confirmed");

gotoxy(10,24) ;

cout<<"STATUS";

gotoxy(30,24);

puts(status);

gotoxy(10,26);

cout<<"RESERVATION NO";

gotoxy(30,26);

cout<<resno;

getch();

[Link]((char*)&tick,sizeof(tick));

break;

else

strcpy(status,"pending");

gotoxy(10,24);

cout<<"STATUS";

gotoxy(30,24);

18 | P a g e
puts(status);

gotoxy(10,26);

cout<<"RESERVATION NO";

gotoxy(30,26);

cout<<resno;

getch();

[Link]((char*)&tick,sizeof(tick));

break;

gotoxy(10,28);

cout<<"DO YOU WISH TO CONTINUE BOOKING TICKETS (Y/N) ? ";

gotoxy(10,30);

char n;

cin>>n;

if(n=='y'||n=='Y')

goto S;

if(f==0)

{clrscr();

gotoxy(10,10);

delay(1000);

cout<<"ERROR IN THE TRAIN NUMBER ENTERED !!!";

getch();

19 | P a g e
}

[Link]();

void tickets::cancellation()

{clrscr();

ifstream fin;

[Link]("[Link]",ios::out);

ofstream file;

[Link]("[Link]",ios::app);

[Link](0);

gotoxy(10,10);

cout<<"ENTER THE RESERVATION NO ";

int r,f=0;

cin>>r;

if(!fin)

cout<<"ERROR IN THE FILE !!!";

while(![Link]())

[Link]((char*)&tick,sizeof(tick));

int z;

z=ret();

if(z!=r)

[Link]((char*)&tick,sizeof(tick));

20 | P a g e
if(z==r)

f=1;

[Link]();

[Link]();

remove("[Link]");

rename("[Link]","[Link]");

if(f==0)

{gotoxy(10,12);

cout<<"NO SUCH RESERVATION IS MADE !!! PLEASE RETRY....";

getch();

else

gotoxy(10,12);

cout<<"RESERVATION CANCELLED";

getch();

void main()

int ch,no,i,r=1000,j;

clrscr();

gotoxy(33,22);

cout<<"WELCOME";

21 | P a g e
delay(1500);

delay(1000);

Z:

clrscr();

gotoxy(25,8) ;

cout<<"RAILWAY TICKET RESERVATION";

gotoxy(25,9);

cout<<"==========================";

gotoxy(20,15) ;

cout<<"[Link] DETAILS";

gotoxy(20,17);

cout<<"[Link] TRAIN DETAILS ";

gotoxy(20,19);

cout<<"[Link] A TICKET ";

gotoxy(20,21);

cout<<"[Link] A TICKET";

gotoxy(20,23);

cout<<"[Link] THE PRESENT TICKET STATUS ";

gotoxy(20,25);

cout<<"[Link]";

gotoxy(20,27);

cout<<"ENTER YOUR CHOICE: ";

cin>>ch;

char n;

switch(ch)

case 1:ifstream fin("[Link]",ios::out);

22 | P a g e
[Link](0);

clrscr();

if(!fin)

clrscr();

gotoxy(10,10);

cout<<"ERROR IN THE FILE !!!";

else

{clrscr();

while(![Link]())

[Link]((char*)&tr,sizeof(tr));

[Link]();

[Link]();

goto Z;

case 2:clrscr();

gotoxy(20,10);

cout<<"ENTER THE PASSWORD " ;

cin>>j;

gotoxy(20,30);

cout<<"CHECKING PLEASE WAIT.....................";

delay(2000);

if(j==r)

23 | P a g e
Y:

ofstream fout("[Link]",ios::app);

[Link]();

[Link]((char*)&tr,sizeof(tr));

[Link]();

gotoxy(10,30);

cout<<"DO YOU WISH TO CONTINUE UPDATING ?(Y/N)";

cin>>n;

textcolor(WHITE);

if(n=='y'||n=='Y')

goto Y;

goto Z;

else

goto Z;

case 3:[Link]();

goto Z;

case 4:[Link]();

goto Z;

case 5:[Link]();

goto Z;

case 6:exit(0);

getch();

24 | P a g e
OUTPUT

25 | P a g e
26 | P a g e
27 | P a g e
28 | P a g e
29 | P a g e
30 | P a g e
31 | P a g e
32 | P a g e
33 | P a g e
34 | P a g e
35 | P a g e
36 | P a g e
37 | P a g e
38 | P a g e
39 | P a g e
40 | P a g e
41 | P a g e
42 | P a g e
43 | P a g e
44 | P a g e
45 | P a g e
46 | P a g e
47 | P a g e
48 | P a g e
49 | P a g e
50 | P a g e

You might also like