Bus Reservation System project of khwopa engineering college
//HEADER FILES
#include<conio.h>
#include<stdio.h>
#include<stdlib.h>
#include<iomanip.h>
#include<dos.h>
#include<fstream.h>
#include<ctype.h>
#include<string.h>
#include<graphics.h>
//GLOBAL VARIABLE
int i=0;
//GLOBAL FUNTIONS
void startup();
void exportrecordfile();
class danphetravel
{
private:
char name[50],from[30],add[80],to[30],month[10],flag;
float price;
int seatno,day,top2;
double cellno;
int fare;
public:
int toggle;
void reserve();
void displayreservations();
void showtransportrec();
void deltransportrec();
void searchtransportrec();
void transfertransportdata();
void edittransportdata();
void transfertransportdata1();
void assignprice();
}user,user1[100];
int main()
{
clrscr();
startup(); //FUNTION TO DISPLAY INTRODUCTION SCREEN
clrscr();
textbackground(YELLOW);
textcolor(RED);
int select;
do
{
cout<<"\n\n";
cout<<"\t\t\t--->>>D A N P H E___D E L U X E<<<--- \n\n";
cout<<"\t\t\t W E L C O M E--T O--M A I N--M E N U \n\n\n";
cout<<"\t\t\t1. Make a Reservation\n";
cout<<"\t\t\t2. View Reservations\n";
cout<<"\t\t\t3. Edit a Reservation\n";
cout<<"\t\t\t4. Search for a Reservation\n";
cout<<"\t\t\t5. Delete a Reservation\n";
cout<<"\t\t\t6. Exit\n\n";
cout<<"\t\t\tSelect an option: ";
cin>>select;
switch(select)
{
case 1:
exportrecordfile();
i++;
break;
case 2:
user.showtransportrec();
//query();
break;
case 3:
user.edittransportdata();
break;
case 4:
user.searchtransportrec();
break;
case 5:
user.deltransportrec();
break;
default:
cout<<"Invalid Input";
break;
}
}
while(select!=6);
return 0;
}
//TRANSPORTATION RESERVATIONS
//FUNTION USED TO RESERVE TRANSPORTATION.
void danphetravel::reserve()
{
clrscr();
flag='N';
while(flag!='Y')
{
clrscr();
assignprice();
clrscr();
textbackground(RED);
textcolor(BLUE);
gotoxy(25,5);cout<<"PLEASE FILL IN THE DETAILS PROPERLY...";
gotoxy(25,5);cout<<"DANPHE DELUXE TICKET RESERVATION FORM";
gotoxy(5,8);cout<<"Name: ";
gotoxy(5,10);cout<<"Address: ";
gotoxy(5,12);cout<<"From: ";
gotoxy(30,12);cout<<"To: ";
gotoxy(5,14);cout<<"Seat No: ";
gotoxy(5,16);cout<<"Contact No:";
gotoxy(5,18);cout<<"Month:";
gotoxy(5,20);cout<<"Day:";
gotoxy(10,22);cout<<"Is the information correct(y/n)?? ";
gotoxy(10,8);gets(name);
gotoxy(13,10);gets(add);
gotoxy(19,12);gets(from);
gotoxy(40,12);gets(to);
gotoxy(16,14);cin>>seatno;
gotoxy(18,16);cin>>cellno;
gotoxy(18,18);gets(month);
gotoxy(18,20);cin>>day;
gotoxy(45,22);cin>>flag;
flag=toupper(flag);
}
displayreservations();
}
//FUNTION USED TOASSIGN PRICE ACCORDING TO DESTINATION.
void danphetravel::assignprice()
{
clrscr();
textbackground(GREEN);
textcolor(RED);
int dest;
gotoxy(20,2);cout<<"\tSELECT DESTINATION: ";
gotoxy(5,5);cout<<"1. Kathmandu-------->>>Pokhara ";
gotoxy(5,7);cout<<"2. Kathmandu-------->>>>Biratnagar";
gotoxy(5,9);cout<<"3. Kathmandu-------->>>Dharan";
gotoxy(5,23);cout<<"Enter (1-3) to Reserve: ";
gotoxy(45,23);cin>>dest;
switch(dest)
{
case 1:
fare=1200;
break;
case 2:
fare=1500;
break;
case 3:
fare=1200;
break;
}
}
//FUNTION USED TO SHOW TRANSPORT RESERVATION.
void danphetravel::displayreservations()
{
clrscr();
clrscr();
textbackground(YELLOW);
textcolor(RED);
gotoxy(25,5);cout<<"WELCOME TO DANPHE DELUXE TICKET RESERVATION ";
gotoxy(24,6);cout<<"----------------------------------------------";
gotoxy(15,8);cout<<"Name:"<<strupr(name);
gotoxy(15,10);cout<<"Address:"<<strupr(add);
gotoxy(15,12);cout<<"From: "<<from
<<" To:"<<to;
gotoxy(15,14);cout<<"Seat no: "<<seatno;
gotoxy(15,16);cout<<"Contact No:"<<cellno;
gotoxy(15,18);cout<<"Month:"<<month<<" Day:"<<day;
gotoxy(15,20);cout<<"Your Reservations have been done Please pay the Amount!!!";
gotoxy(25,22);cout<<"Please pay Amount: Rs."<<fare<<" To Complete Reservation";
getch();
}
//FUNTION USED TO SHOW ALL TRANSPORT RECORDS.
void danphetravel::showtransportrec()
{
fstream file1;
file1.open("transport.txt",ios::in);
while(file1.read((char*)&user,sizeof (user)))
user.displayreservations();;
file1.close();
}
//FUNTION USED TO DELETE A TRANSPORT RECORDS.
void danphetravel::deltransportrec()
{
clrscr();
textbackground(YELLOW);
textcolor(RED);
char delname[20];
gotoxy(20,5);cout<<"Enter name to delete record for...";
gotoxy(30,7);gets(delname);
strupr(delname);
fstream file2,file3;
int dele=0;
file2.open("transport.txt", ios::in);
file3.open("temp3.txt", ios::out );
while(file2.read ((char*)&user,sizeof (user)))
{
if ((strcmp(name,delname))!=0)
file3.write((char*)&user,sizeof (user));
else
dele++;
}
if(dele!=0)
cout<<endl<<" ...Deleted...";
else
cout<<endl<<" Record not found..";
getch();
file2.close();
file3.close();
transfertransportdata();
}
//FUNTION USED TO TRANSFER UNDELETED TRANSPORT RECORDS.
void danphetravel::transfertransportdata()
{
fstream oldfile1,newfile1;
oldfile1.open("temp3.txt", ios::in);
newfile1.open("transport.txt", ios::out);
while(oldfile1.read((char*)&user,sizeof(user)))
newfile1.write((char*)&user,sizeof (user));
oldfile1.close();
newfile1.close();
}
//FUNTION USED TO SEARCH FOR A TRANSPORT RECORDS.
void danphetravel::searchtransportrec()
{
clrscr();
textbackground(YELLOW);
textcolor(GREEN);
char sename[20];
gotoxy(20,5);cout<<"Enter Name to search for..";
gotoxy(25,7);gets(sename);
strupr(sename);
fstream file4;
file4.open("transport.txt", ios::in);
int serch=0;
while(file4.read((char*)&user,sizeof (user)))
{
if(strcmp(name,sename)==0)
{
serch++;
user.displayreservations();;
}
}
if(serch==0)
cout<<" No Record Exists";
file4.close();
getch();
}
//FUNTION USED TO EDIT TRANSPORT RECORD.
void danphetravel::edittransportdata()
{
clrscr();
textbackground(BLUE);
textcolor(RED);
char edname[30];
int ede1=0;
gotoxy(20,5);cout<<"Enter Name to Edit Record for...";
gotoxy(25,7);gets(edname);
strupr(edname);
fstream file5,file6;
file5.open("transport.txt", ios::in) ;
file6.open("temp2.txt", ios::out ) ;
while(file5.read((char*)&user,sizeof(user)))
{
if (strcmp (edname,name)==0)
{
reserve();
ede1++;
}
file6.write((char*)&user,sizeof (user));
}
if(ede1==0)
{
gotoxy(25,17);cout<<"RECORD DOESNT EXIST!!!!";
}
getch();
file5.close();
file6.close();
transfertransportdata1(); //TO TRANSFER EDITED TRANSPORT RECORD
}
//FUNTION USED TO TRASFER EDITED TRANSPORT RECORDS.
void danphetravel::transfertransportdata1()
{
fstream oldfile3,newfile3;
oldfile3.open("temp2.txt", ios::in);
newfile3.open("transport.txt",ios::out);
while(oldfile3.read((char*)&user,sizeof(user)))
newfile3.write((char*)&user,sizeof (user));
oldfile3.close();
newfile3.close();
}
//FUNTION USED TO MAKE TRANSPORT RECORD.
void exportrecordfile()
{
fstream file;
file.open("transport.txt",ios::out |ios::app);
user1[i].toggle=1;
user1[i].reserve();
file.write((char*)&user1[i],sizeof (user1[i]));
file.close();
}
//FUNTION USED TO DISPLAY INTRODUCTION SCREEN
void startup()
{
clrscr();
textbackground(YELLOW);
textcolor(RED)
;
for(int j=0;j<10;j++)
{
clrscr();
gotoxy(j,6); cputs(" ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ");
gotoxy(j,7); cputs(" ÜÜÜÜÜÜÜ ÜÜÜÜÜÜ ÜÜÜÜÜÜ");
gotoxy(j,8); cputs(" Û Û Û Û Û");
gotoxy(j,9); cputs(" Û ÛÜÜÜÛ ÛÜÜÜÜÛ");
gotoxy(j,10);cputs(" Û Û Û Û Û");
gotoxy(j,11);cputs(" Û Û ÛÛ Û Û");
gotoxy(51-j,6); cputs("ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ \n\r");
gotoxy(51-j,7); cputs(" Ü Ü ÜÜÜÜÜÜ Ü \n\r");
gotoxy(51-j,8); cputs(" Û Û Û Û \n\r");
gotoxy(51-j,9); cputs(" Û Û ÛÜÜÜ Û \n\r");
gotoxy(51-j,10);cputs(" Û Û Û Û \n\r");
gotoxy(51-j,11);cputs(" ÛÛ ÛÛÛÛÛÛ ÛÛÛÛ \n\r\n\n");
gotoxy(j,12);cputs(" Ü Ü ÜÜÜÜÜÜ ");
gotoxy(j,13);cputs(" ÛÛ Û Û ");
gotoxy(j,14);cputs(" Û Û Û ÛÛÛÛ ");
gotoxy(j,15);cputs(" Û Û Û Û ");
gotoxy(j,16);cputs(" Û ÛÛ ÛÛÛÛÛÛÛ ");
gotoxy(j,17);cputs(" ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ\n\n");
gotoxy(58-j,12);cputs(" ÜÜÜÜÜÜ ÜÜÜÜÜÜ Ü \n\r");
gotoxy(58-j,13);cputs(" Û Û Û Û Û \n\r");
gotoxy(58-j,14);cputs(" ÛÛÛÛÛÛ ÛÜÜÜÜÛ Û \n\r");
gotoxy(58-j,15);cputs(" Û Û Û Û \n\r");
gotoxy(58-j,16);cputs(" Û Û Û ÛÛÛÛÛÛÛÛÛ \n\r");
gotoxy(58-j,17);cputs("ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ \n\r");
}
gotoxy(25,25);
cout<<"press any key to continue...";
getch();
}
#include<conio.h>
#include<stdio.h>
#include<stdlib.h>
#include<iomanip.h>
#include<dos.h>
#include<fstream.h>
#include<ctype.h>
#include<string.h>
#include<graphics.h>
//GLOBAL VARIABLE
int i=0;
//GLOBAL FUNTIONS
void startup();
void exportrecordfile();
class danphetravel
{
private:
char name[50],from[30],add[80],to[30],month[10],flag;
float price;
int seatno,day,top2;
double cellno;
int fare;
public:
int toggle;
void reserve();
void displayreservations();
void showtransportrec();
void deltransportrec();
void searchtransportrec();
void transfertransportdata();
void edittransportdata();
void transfertransportdata1();
void assignprice();
}user,user1[100];
int main()
{
clrscr();
startup(); //FUNTION TO DISPLAY INTRODUCTION SCREEN
clrscr();
textbackground(YELLOW);
textcolor(RED);
int select;
do
{
cout<<"\n\n";
cout<<"\t\t\t--->>>D A N P H E___D E L U X E<<<--- \n\n";
cout<<"\t\t\t W E L C O M E--T O--M A I N--M E N U \n\n\n";
cout<<"\t\t\t1. Make a Reservation\n";
cout<<"\t\t\t2. View Reservations\n";
cout<<"\t\t\t3. Edit a Reservation\n";
cout<<"\t\t\t4. Search for a Reservation\n";
cout<<"\t\t\t5. Delete a Reservation\n";
cout<<"\t\t\t6. Exit\n\n";
cout<<"\t\t\tSelect an option: ";
cin>>select;
switch(select)
{
case 1:
exportrecordfile();
i++;
break;
case 2:
user.showtransportrec();
//query();
break;
case 3:
user.edittransportdata();
break;
case 4:
user.searchtransportrec();
break;
case 5:
user.deltransportrec();
break;
default:
cout<<"Invalid Input";
break;
}
}
while(select!=6);
return 0;
}
//TRANSPORTATION RESERVATIONS
//FUNTION USED TO RESERVE TRANSPORTATION.
void danphetravel::reserve()
{
clrscr();
flag='N';
while(flag!='Y')
{
clrscr();
assignprice();
clrscr();
textbackground(RED);
textcolor(BLUE);
gotoxy(25,5);cout<<"PLEASE FILL IN THE DETAILS PROPERLY...";
gotoxy(25,5);cout<<"DANPHE DELUXE TICKET RESERVATION FORM";
gotoxy(5,8);cout<<"Name: ";
gotoxy(5,10);cout<<"Address: ";
gotoxy(5,12);cout<<"From: ";
gotoxy(30,12);cout<<"To: ";
gotoxy(5,14);cout<<"Seat No: ";
gotoxy(5,16);cout<<"Contact No:";
gotoxy(5,18);cout<<"Month:";
gotoxy(5,20);cout<<"Day:";
gotoxy(10,22);cout<<"Is the information correct(y/n)?? ";
gotoxy(10,8);gets(name);
gotoxy(13,10);gets(add);
gotoxy(19,12);gets(from);
gotoxy(40,12);gets(to);
gotoxy(16,14);cin>>seatno;
gotoxy(18,16);cin>>cellno;
gotoxy(18,18);gets(month);
gotoxy(18,20);cin>>day;
gotoxy(45,22);cin>>flag;
flag=toupper(flag);
}
displayreservations();
}
//FUNTION USED TOASSIGN PRICE ACCORDING TO DESTINATION.
void danphetravel::assignprice()
{
clrscr();
textbackground(GREEN);
textcolor(RED);
int dest;
gotoxy(20,2);cout<<"\tSELECT DESTINATION: ";
gotoxy(5,5);cout<<"1. Kathmandu-------->>>Pokhara ";
gotoxy(5,7);cout<<"2. Kathmandu-------->>>>Biratnagar";
gotoxy(5,9);cout<<"3. Kathmandu-------->>>Dharan";
gotoxy(5,23);cout<<"Enter (1-3) to Reserve: ";
gotoxy(45,23);cin>>dest;
switch(dest)
{
case 1:
fare=1200;
break;
case 2:
fare=1500;
break;
case 3:
fare=1200;
break;
}
}
//FUNTION USED TO SHOW TRANSPORT RESERVATION.
void danphetravel::displayreservations()
{
clrscr();
clrscr();
textbackground(YELLOW);
textcolor(RED);
gotoxy(25,5);cout<<"WELCOME TO DANPHE DELUXE TICKET RESERVATION ";
gotoxy(24,6);cout<<"----------------------------------------------";
gotoxy(15,8);cout<<"Name:"<<strupr(name);
gotoxy(15,10);cout<<"Address:"<<strupr(add);
gotoxy(15,12);cout<<"From: "<<from
<<" To:"<<to;
gotoxy(15,14);cout<<"Seat no: "<<seatno;
gotoxy(15,16);cout<<"Contact No:"<<cellno;
gotoxy(15,18);cout<<"Month:"<<month<<" Day:"<<day;
gotoxy(15,20);cout<<"Your Reservations have been done Please pay the Amount!!!";
gotoxy(25,22);cout<<"Please pay Amount: Rs."<<fare<<" To Complete Reservation";
getch();
}
//FUNTION USED TO SHOW ALL TRANSPORT RECORDS.
void danphetravel::showtransportrec()
{
fstream file1;
file1.open("transport.txt",ios::in);
while(file1.read((char*)&user,sizeof (user)))
user.displayreservations();;
file1.close();
}
//FUNTION USED TO DELETE A TRANSPORT RECORDS.
void danphetravel::deltransportrec()
{
clrscr();
textbackground(YELLOW);
textcolor(RED);
char delname[20];
gotoxy(20,5);cout<<"Enter name to delete record for...";
gotoxy(30,7);gets(delname);
strupr(delname);
fstream file2,file3;
int dele=0;
file2.open("transport.txt", ios::in);
file3.open("temp3.txt", ios::out );
while(file2.read ((char*)&user,sizeof (user)))
{
if ((strcmp(name,delname))!=0)
file3.write((char*)&user,sizeof (user));
else
dele++;
}
if(dele!=0)
cout<<endl<<" ...Deleted...";
else
cout<<endl<<" Record not found..";
getch();
file2.close();
file3.close();
transfertransportdata();
}
//FUNTION USED TO TRANSFER UNDELETED TRANSPORT RECORDS.
void danphetravel::transfertransportdata()
{
fstream oldfile1,newfile1;
oldfile1.open("temp3.txt", ios::in);
newfile1.open("transport.txt", ios::out);
while(oldfile1.read((char*)&user,sizeof(user)))
newfile1.write((char*)&user,sizeof (user));
oldfile1.close();
newfile1.close();
}
//FUNTION USED TO SEARCH FOR A TRANSPORT RECORDS.
void danphetravel::searchtransportrec()
{
clrscr();
textbackground(YELLOW);
textcolor(GREEN);
char sename[20];
gotoxy(20,5);cout<<"Enter Name to search for..";
gotoxy(25,7);gets(sename);
strupr(sename);
fstream file4;
file4.open("transport.txt", ios::in);
int serch=0;
while(file4.read((char*)&user,sizeof (user)))
{
if(strcmp(name,sename)==0)
{
serch++;
user.displayreservations();;
}
}
if(serch==0)
cout<<" No Record Exists";
file4.close();
getch();
}
//FUNTION USED TO EDIT TRANSPORT RECORD.
void danphetravel::edittransportdata()
{
clrscr();
textbackground(BLUE);
textcolor(RED);
char edname[30];
int ede1=0;
gotoxy(20,5);cout<<"Enter Name to Edit Record for...";
gotoxy(25,7);gets(edname);
strupr(edname);
fstream file5,file6;
file5.open("transport.txt", ios::in) ;
file6.open("temp2.txt", ios::out ) ;
while(file5.read((char*)&user,sizeof(user)))
{
if (strcmp (edname,name)==0)
{
reserve();
ede1++;
}
file6.write((char*)&user,sizeof (user));
}
if(ede1==0)
{
gotoxy(25,17);cout<<"RECORD DOESNT EXIST!!!!";
}
getch();
file5.close();
file6.close();
transfertransportdata1(); //TO TRANSFER EDITED TRANSPORT RECORD
}
//FUNTION USED TO TRASFER EDITED TRANSPORT RECORDS.
void danphetravel::transfertransportdata1()
{
fstream oldfile3,newfile3;
oldfile3.open("temp2.txt", ios::in);
newfile3.open("transport.txt",ios::out);
while(oldfile3.read((char*)&user,sizeof(user)))
newfile3.write((char*)&user,sizeof (user));
oldfile3.close();
newfile3.close();
}
//FUNTION USED TO MAKE TRANSPORT RECORD.
void exportrecordfile()
{
fstream file;
file.open("transport.txt",ios::out |ios::app);
user1[i].toggle=1;
user1[i].reserve();
file.write((char*)&user1[i],sizeof (user1[i]));
file.close();
}
//FUNTION USED TO DISPLAY INTRODUCTION SCREEN
void startup()
{
clrscr();
textbackground(YELLOW);
textcolor(RED)
;
for(int j=0;j<10;j++)
{
clrscr();
gotoxy(j,6); cputs(" ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ");
gotoxy(j,7); cputs(" ÜÜÜÜÜÜÜ ÜÜÜÜÜÜ ÜÜÜÜÜÜ");
gotoxy(j,8); cputs(" Û Û Û Û Û");
gotoxy(j,9); cputs(" Û ÛÜÜÜÛ ÛÜÜÜÜÛ");
gotoxy(j,10);cputs(" Û Û Û Û Û");
gotoxy(j,11);cputs(" Û Û ÛÛ Û Û");
gotoxy(51-j,6); cputs("ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ \n\r");
gotoxy(51-j,7); cputs(" Ü Ü ÜÜÜÜÜÜ Ü \n\r");
gotoxy(51-j,8); cputs(" Û Û Û Û \n\r");
gotoxy(51-j,9); cputs(" Û Û ÛÜÜÜ Û \n\r");
gotoxy(51-j,10);cputs(" Û Û Û Û \n\r");
gotoxy(51-j,11);cputs(" ÛÛ ÛÛÛÛÛÛ ÛÛÛÛ \n\r\n\n");
gotoxy(j,12);cputs(" Ü Ü ÜÜÜÜÜÜ ");
gotoxy(j,13);cputs(" ÛÛ Û Û ");
gotoxy(j,14);cputs(" Û Û Û ÛÛÛÛ ");
gotoxy(j,15);cputs(" Û Û Û Û ");
gotoxy(j,16);cputs(" Û ÛÛ ÛÛÛÛÛÛÛ ");
gotoxy(j,17);cputs(" ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ\n\n");
gotoxy(58-j,12);cputs(" ÜÜÜÜÜÜ ÜÜÜÜÜÜ Ü \n\r");
gotoxy(58-j,13);cputs(" Û Û Û Û Û \n\r");
gotoxy(58-j,14);cputs(" ÛÛÛÛÛÛ ÛÜÜÜÜÛ Û \n\r");
gotoxy(58-j,15);cputs(" Û Û Û Û \n\r");
gotoxy(58-j,16);cputs(" Û Û Û ÛÛÛÛÛÛÛÛÛ \n\r");
gotoxy(58-j,17);cputs("ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ \n\r");
}
gotoxy(25,25);
cout<<"press any key to continue...";
getch();
}
Post a Comment