//PROGRAM - TRAIN RESERVATION
#include<iostre am.h>
#include<conio. h>
#include<string .h>
#include<dos.h>
#include<stdio. h>
#include<fstrea m.h>
#include<proces s.h>
#include<stdlib .h>
class train {
private :
int trainno,nofafse at,nofasseat,no ffsseat,nofacse at,nofssseat; char trainname[60],startingpoint[60],destination[60]; public :
train() {
trainno=0;
nofafseat=0;
nofasseat=0;
noffsseat=0;
nofacseat=0;
nofssseat=0;
strcpy(trainnam e,"/0");
strcpy(starting point,"/0");
strcpy(destinat ion,"/0");
}
void input(); //To input the details void display(); //To display the details int returntr(); int returnaf();
int returnas(); int returnfs(); int returnac(); int returnss(); int returnaf(); int returntr();
}tr;
int train::returntr () {
return trainno;
}
int train::returnaf ()
{
return nofafseat;
}
int train::returnas () {
return nofasseat;
}
int train::returnfs ()
{
return noffsseat;
}
int train::returnac ()
{
return nofacseat;
}
int train::returnss ()
{
return nofssseat;
} 11
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);
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(startingpo int); gotoxy(10,26);
cout<<"ENTER THE DESTINATION ";
gotoxy(57,26);
gets(destinatio n);
void train::display () {
clrscr();
gotoxy(10,10); cout<<"TRAIN NUMBER "; gotoxy(47,10);
cout<<trainno;
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);
puts(startingpo int);
gotoxy(10,26); cout<<"DESTINAT ION "; gotoxy(47,26);
puts(destinatio n);
gotoxy(10,28);
cout<<"PRESS ANY KEY TO CONTINUE ";
getch();
}
class tickets
{
int resno,toaf,nofa f,toas,nofas,to fs,noffs,toac,n ofac,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::ticket s() {
resno=0;
toaf=0;
nofaf=0;
toas=0;
nofas=0;
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::displa y()
{
int f=0; clrscr();
ifstream fn("Ticket1.dat ",ios::out) ; fn.seekg(0);
if(!fn)
{
cout<<"ERROR IN THE FILE ";
}
X:
gotoxy(10,10);
cout<<"ENTER THE RESERVATION NO "; gotoxy(10,12);
int n; cin>>n;
while(!fn.eof() )
{
fn.read((char*) &tick,sizeof(ti ck));
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<<"RESERVAT ION NUMBER ";
gotoxy(30,16);
cout<<resno;
gotoxy(10,18);
cout<<"PRESS ANY KEY TO CONTINUE ";
getch();
}
}
if(f==0) {
clrscr();
gotoxy(10,10);
cout<<"UNRECOGI NIZED 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();
}
}
fn.close();
}
void tickets::reserv ation()
{
clrscr();
gotoxy(10,10); cout<<"RESERVAT ION "; gotoxy(10,12);
cout<<"ENTER THE TRAIN NO: ";
int tno,f=0; cin>>tno; ofstream file;
ifstream fin("Train1.dat ",ios::out) ; fin.seekg(0);
if(!fin)
{
clrscr();
gotoxy(10,10); cout< <"ERROR IN THE FILE ";
clrscr();
while(!fin.eof( ))
{
fin.read((char* )&tr,sizeof(tr) ); int z;
z=tr.returntr() ; if(tno==z)
{
f=1;
nofaf=tr.return af();
nofas=tr.return as();
noffs=tr.return fs();
nofac=tr.return ac();
nofss=tr.return ss();
}
}
if(f==1)
{
file.open("Tick et1.dat",ios::a pp);
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 " ;
gotoxy(10,16);
cout<<"3.FIRST CLASS SLEEPER " ;
gotoxy(10,18); cout<<"4.A/C CHAIR CAR " ;
gotoxy(10,20);
cout<<"5.SECOND CLASS SLEEPER ";
gotoxy(10,22);
cout<<"ENTER YOUR CHOICE "; gotoxy(30,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<<"RESERVAT ION NO";
gotoxy(30,26); cout<<resno;
getch();
file.write((cha r*)&tick,sizeof (tick)); break;
strcpy(status," pending");
gotoxy(10,24);
cout<<"STATUS";
gotoxy(30,24); puts(status);
gotoxy(10,26); cout<<"RESERVAT ION NO";
gotoxy(30,26); cout<<resno;
getch();
file.write((cha r*)&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<<"RESERVAT ION NO";
gotoxy(30,26); cout<<resno;
getch();
file.write((cha r*)&tick,sizeof (tick)); break;
strcpy(status," pending");
gotoxy(10,24); cout<<"STATUS";
gotoxy(30,24);
puts(status);
gotoxy(10,26);
cout<<"RESERVAT ION NO";
gotoxy(30,26);
cout<<resno;
getch();
file.write((cha r*)&tick,sizeof (tick)); break;
}
case 3:
tofs++; resno=rand();
if((noffs-tofs)>0)
{
strcpy(status," confirmed");
gotoxy(10,24) ;
cout< <"STATUS";
gotoxy(30,24);
puts(status);
gotoxy(10,26); cout<<"RESERVAT ION NO";
gotoxy(30,26); cout<<resno;
getch();
file.write((cha r*)&tick,sizeof (tick)); break;
}
else
{
strcpy(status," pending");
gotoxy(10,24);
cout<<"STATUS";
gotoxy(30,24);
puts(status);
gotoxy(10,26);
cout<<"RESERVAT ION NO";
gotoxy(30,26);
cout<<resno;
getch();
file.write((cha r*)&tick,sizeof (tick)); break;
}
case 4:
toac++;
resno=rand();
if((nofac-toac)>0)
{
strcpy(status," confirmed");
gotoxy(10,24) ;
cout< <"STATUS";
gotoxy(30,24);
puts(status);
gotoxy(10,26);
cout<<"RESERVAT ION NO";
gotoxy(30,26);
cout<<resno;
getch();
file.write((cha r*)&tick,sizeof (tick)); break;
}
else
{
strcpy(status," pending");
gotoxy(10,24);
cout<<"STATUS";
gotoxy(30,24);
puts(status);
gotoxy(10,26); cout<<"RESERVAT ION NO"; gotoxy(30,26);
cout<<resno;
getch();
file.write((cha r*)&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<<"RESERVAT ION NO";
gotoxy(30,26); cout<<resno;
getch();
file.write((cha r*)&tick,sizeof (tick)); break;
}
else
{
strcpy(status," pending");
gotoxy(10,24);
cout<<"STATUS";
gotoxy(30,24);
puts(status);
gotoxy(10,26);
cout<<"RESERVAT ION NO";
gotoxy(30,26);
cout<<resno;
getch();
file.write((cha r*)&tick,sizeof (tick)); break;
}
}
gotoxy(10,28);
cout<<"DO YOU WISH TO CONTINUE BOOKING TICKETS (Y/N) ? "; gotoxy(57,30); char n;
cin>>n;
if(n=='y'||n==' Y') {
goto S;
}
}
}
if(f==0)
{
clrscr();
gotoxy(10,10);
cout< <"ERROR IN THE TRAIN NUMBER ENTERED !!!"; getch();
}
file.close();
}
void tickets::cancel lation()
{
clrscr(); ifstream fin;
fin.open("Ticke t1.dat",ios::ou t);
ofstream file;
file.open("Temp 1.dat",ios::app );
fin.seekg(0);
gotoxy(10,10);
cout<<"ENTER THE RESERVATION NO ";
int r,f=0;
cin>>r;
if(!fin)
cout< <"ERROR IN THE FILE !!!";
}
while(!fin.eof( ))
{
fin.read((char* )&tick,sizeof(t ick)); int z;
z=ret(); if(z!=r)
{
file.write((cha r*)&tick,sizeof (tick));
}
if(z==r) {
f=1;
}
}
file.close(); fin.close();
remove("Ticket1 .dat"); rename("Temp1.d at","Ticket1.da t");
if(f==0) {
gotoxy(10,12);
cout<<"NO SUCH RESERVATION IS MADE !!! PLEASE RETRY ";
getch();
}
else
{
gotoxy(10,12);
cout<<"RESERVAT ION CANCELLED"; getch();
}
}
void main() {
int ch,r=1000,j;
clrscr();
gotoxy(33,22);
cout<<"WELCOME" ;
Z:
clrscr(); gotoxy(25,8) ;
cout<<"RAILWAY TICKET RESERVATION"; gotoxy(25,9);
cout<<"======== =============== ===";
gotoxy(20,15) ; cout<<"1.TRAIN DETAILS";
gotoxy(20,17);
cout<<"2.UPDATE TRAIN DETAILS ";
gotoxy(20,19);
cout<<"3.RESERV ING A TICKET ";
gotoxy(20,21);
cout<<"4.CANCEL LING A TICKET";
gotoxy(20,23);
cout<<"5.DISPLA Y THE PRESENT TICKET STATUS ";
gotoxy(20,25);
cout<<"6.EXIT";
gotoxy(20,27);
cout<<"ENTER YOUR CHOICE: ";
cin>>ch; char n;
switch(ch) {
case 1: {
ifstream fin("Train1.dat ",ios::out) ;
fin.seekg(0);
clrscr();
if(!fin)
{
clrscr();
gotoxy(10,10);
cout< <"ERROR IN THE FILE !!!";
}
else {
clrscr();
while(!fin.eof( )) {
fin.read((char* )&tr,sizeof(tr) ); tr.display();
}
}
fin.close(); goto Z;
}
case 2:
clrscr();
gotoxy(20,10);
cout<<"ENTER THE PASSWORD " ;
cin>>j;
gotoxy(20,30);
cout< <"CHECKING PLEASE WAIT ";
getch();
}
{
Y:
ofstream fout("Train1.da t",ios::app) ; tr.input();
fout.write((cha r*)&tr,sizeof(t r));
fout.close();
gotoxy(10,30);
cout<<"DO YOU WISH TO CONTINUE UPDATING ?(Y/N)";
cin>>n;
if(n==y||n==Y)
goto Y; goto Z;
}
else
goto Z;
case 3:
tick.reservatio n(); goto Z;
case 4:
tick.cancellati on(); goto Z;
case 5:
tick.display(); goto Z;
case 6:
exit(0);
}
getch();
#include<iostre am.h>
#include<conio. h>
#include<string .h>
#include<dos.h>
#include<stdio. h>
#include<fstrea m.h>
#include<proces s.h>
#include<stdlib .h>
class train {
private :
int trainno,nofafse at,nofasseat,no ffsseat,nofacse at,nofssseat; char trainname[60],startingpoint[60],destination[60]; public :
train() {
trainno=0;
nofafseat=0;
nofasseat=0;
noffsseat=0;
nofacseat=0;
nofssseat=0;
strcpy(trainnam e,"/0");
strcpy(starting point,"/0");
strcpy(destinat ion,"/0");
}
void input(); //To input the details void display(); //To display the details int returntr(); int returnaf();
int returnas(); int returnfs(); int returnac(); int returnss(); int returnaf(); int returntr();
}tr;
int train::returntr () {
return trainno;
}
int train::returnaf ()
{
return nofafseat;
}
int train::returnas () {
return nofasseat;
}
int train::returnfs ()
{
return noffsseat;
}
int train::returnac ()
{
return nofacseat;
}
int train::returnss ()
{
return nofssseat;
} 11
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);
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(startingpo int); gotoxy(10,26);
cout<<"ENTER THE DESTINATION ";
gotoxy(57,26);
gets(destinatio n);
void train::display () {
clrscr();
gotoxy(10,10); cout<<"TRAIN NUMBER "; gotoxy(47,10);
cout<<trainno;
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);
puts(startingpo int);
gotoxy(10,26); cout<<"DESTINAT ION "; gotoxy(47,26);
puts(destinatio n);
gotoxy(10,28);
cout<<"PRESS ANY KEY TO CONTINUE ";
getch();
}
class tickets
{
int resno,toaf,nofa f,toas,nofas,to fs,noffs,toac,n ofac,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::ticket s() {
resno=0;
toaf=0;
nofaf=0;
toas=0;
nofas=0;
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::displa y()
{
int f=0; clrscr();
ifstream fn("Ticket1.dat ",ios::out) ; fn.seekg(0);
if(!fn)
{
cout<<"ERROR IN THE FILE ";
}
X:
gotoxy(10,10);
cout<<"ENTER THE RESERVATION NO "; gotoxy(10,12);
int n; cin>>n;
while(!fn.eof() )
{
fn.read((char*) &tick,sizeof(ti ck));
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<<"RESERVAT ION NUMBER ";
gotoxy(30,16);
cout<<resno;
gotoxy(10,18);
cout<<"PRESS ANY KEY TO CONTINUE ";
getch();
}
}
if(f==0) {
clrscr();
gotoxy(10,10);
cout<<"UNRECOGI NIZED 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();
}
}
fn.close();
}
void tickets::reserv ation()
{
clrscr();
gotoxy(10,10); cout<<"RESERVAT ION "; gotoxy(10,12);
cout<<"ENTER THE TRAIN NO: ";
int tno,f=0; cin>>tno; ofstream file;
ifstream fin("Train1.dat ",ios::out) ; fin.seekg(0);
if(!fin)
{
clrscr();
gotoxy(10,10); cout< <"ERROR IN THE FILE ";
clrscr();
while(!fin.eof( ))
{
fin.read((char* )&tr,sizeof(tr) ); int z;
z=tr.returntr() ; if(tno==z)
{
f=1;
nofaf=tr.return af();
nofas=tr.return as();
noffs=tr.return fs();
nofac=tr.return ac();
nofss=tr.return ss();
}
}
if(f==1)
{
file.open("Tick et1.dat",ios::a pp);
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 " ;
gotoxy(10,16);
cout<<"3.FIRST CLASS SLEEPER " ;
gotoxy(10,18); cout<<"4.A/C CHAIR CAR " ;
gotoxy(10,20);
cout<<"5.SECOND CLASS SLEEPER ";
gotoxy(10,22);
cout<<"ENTER YOUR CHOICE "; gotoxy(30,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<<"RESERVAT ION NO";
gotoxy(30,26); cout<<resno;
getch();
file.write((cha r*)&tick,sizeof (tick)); break;
strcpy(status," pending");
gotoxy(10,24);
cout<<"STATUS";
gotoxy(30,24); puts(status);
gotoxy(10,26); cout<<"RESERVAT ION NO";
gotoxy(30,26); cout<<resno;
getch();
file.write((cha r*)&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<<"RESERVAT ION NO";
gotoxy(30,26); cout<<resno;
getch();
file.write((cha r*)&tick,sizeof (tick)); break;
strcpy(status," pending");
gotoxy(10,24); cout<<"STATUS";
gotoxy(30,24);
puts(status);
gotoxy(10,26);
cout<<"RESERVAT ION NO";
gotoxy(30,26);
cout<<resno;
getch();
file.write((cha r*)&tick,sizeof (tick)); break;
}
case 3:
tofs++; resno=rand();
if((noffs-tofs)>0)
{
strcpy(status," confirmed");
gotoxy(10,24) ;
cout< <"STATUS";
gotoxy(30,24);
puts(status);
gotoxy(10,26); cout<<"RESERVAT ION NO";
gotoxy(30,26); cout<<resno;
getch();
file.write((cha r*)&tick,sizeof (tick)); break;
}
else
{
strcpy(status," pending");
gotoxy(10,24);
cout<<"STATUS";
gotoxy(30,24);
puts(status);
gotoxy(10,26);
cout<<"RESERVAT ION NO";
gotoxy(30,26);
cout<<resno;
getch();
file.write((cha r*)&tick,sizeof (tick)); break;
}
case 4:
toac++;
resno=rand();
if((nofac-toac)>0)
{
strcpy(status," confirmed");
gotoxy(10,24) ;
cout< <"STATUS";
gotoxy(30,24);
puts(status);
gotoxy(10,26);
cout<<"RESERVAT ION NO";
gotoxy(30,26);
cout<<resno;
getch();
file.write((cha r*)&tick,sizeof (tick)); break;
}
else
{
strcpy(status," pending");
gotoxy(10,24);
cout<<"STATUS";
gotoxy(30,24);
puts(status);
gotoxy(10,26); cout<<"RESERVAT ION NO"; gotoxy(30,26);
cout<<resno;
getch();
file.write((cha r*)&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<<"RESERVAT ION NO";
gotoxy(30,26); cout<<resno;
getch();
file.write((cha r*)&tick,sizeof (tick)); break;
}
else
{
strcpy(status," pending");
gotoxy(10,24);
cout<<"STATUS";
gotoxy(30,24);
puts(status);
gotoxy(10,26);
cout<<"RESERVAT ION NO";
gotoxy(30,26);
cout<<resno;
getch();
file.write((cha r*)&tick,sizeof (tick)); break;
}
}
gotoxy(10,28);
cout<<"DO YOU WISH TO CONTINUE BOOKING TICKETS (Y/N) ? "; gotoxy(57,30); char n;
cin>>n;
if(n=='y'||n==' Y') {
goto S;
}
}
}
if(f==0)
{
clrscr();
gotoxy(10,10);
cout< <"ERROR IN THE TRAIN NUMBER ENTERED !!!"; getch();
}
file.close();
}
void tickets::cancel lation()
{
clrscr(); ifstream fin;
fin.open("Ticke t1.dat",ios::ou t);
ofstream file;
file.open("Temp 1.dat",ios::app );
fin.seekg(0);
gotoxy(10,10);
cout<<"ENTER THE RESERVATION NO ";
int r,f=0;
cin>>r;
if(!fin)
cout< <"ERROR IN THE FILE !!!";
}
while(!fin.eof( ))
{
fin.read((char* )&tick,sizeof(t ick)); int z;
z=ret(); if(z!=r)
{
file.write((cha r*)&tick,sizeof (tick));
}
if(z==r) {
f=1;
}
}
file.close(); fin.close();
remove("Ticket1 .dat"); rename("Temp1.d at","Ticket1.da t");
if(f==0) {
gotoxy(10,12);
cout<<"NO SUCH RESERVATION IS MADE !!! PLEASE RETRY ";
getch();
}
else
{
gotoxy(10,12);
cout<<"RESERVAT ION CANCELLED"; getch();
}
}
void main() {
int ch,r=1000,j;
clrscr();
gotoxy(33,22);
cout<<"WELCOME" ;
Z:
clrscr(); gotoxy(25,8) ;
cout<<"RAILWAY TICKET RESERVATION"; gotoxy(25,9);
cout<<"======== =============== ===";
gotoxy(20,15) ; cout<<"1.TRAIN DETAILS";
gotoxy(20,17);
cout<<"2.UPDATE TRAIN DETAILS ";
gotoxy(20,19);
cout<<"3.RESERV ING A TICKET ";
gotoxy(20,21);
cout<<"4.CANCEL LING A TICKET";
gotoxy(20,23);
cout<<"5.DISPLA Y THE PRESENT TICKET STATUS ";
gotoxy(20,25);
cout<<"6.EXIT";
gotoxy(20,27);
cout<<"ENTER YOUR CHOICE: ";
cin>>ch; char n;
switch(ch) {
case 1: {
ifstream fin("Train1.dat ",ios::out) ;
fin.seekg(0);
clrscr();
if(!fin)
{
clrscr();
gotoxy(10,10);
cout< <"ERROR IN THE FILE !!!";
}
else {
clrscr();
while(!fin.eof( )) {
fin.read((char* )&tr,sizeof(tr) ); tr.display();
}
}
fin.close(); goto Z;
}
case 2:
clrscr();
gotoxy(20,10);
cout<<"ENTER THE PASSWORD " ;
cin>>j;
gotoxy(20,30);
cout< <"CHECKING PLEASE WAIT ";
getch();
}
{
Y:
ofstream fout("Train1.da t",ios::app) ; tr.input();
fout.write((cha r*)&tr,sizeof(t r));
fout.close();
gotoxy(10,30);
cout<<"DO YOU WISH TO CONTINUE UPDATING ?(Y/N)";
cin>>n;
if(n==y||n==Y)
goto Y; goto Z;
}
else
goto Z;
case 3:
tick.reservatio n(); goto Z;
case 4:
tick.cancellati on(); goto Z;
case 5:
tick.display(); goto Z;
case 6:
exit(0);
}
getch();
Comment