online compiler and debugger for c/c++

code. compile. run. debug. share.
Source Code    Language
/*****************************/ /* PROJECT TRAVEL AGENCY */ /*****************************/ /*************************/ /* INCLUDED HEADER FILES */ /*************************/ #include <iostream.h> #include <fstream.h> #include <string.h> #include <stdio.h> #include <ctype.h> #include <conio.h> #include <dos.h> /*******************************************************************/ // THIS CLASS CONTAIN ALL THE FUNCTION RELATED TO TICKET // LIKE RESERVATION, DELETION, ETC. /*******************************************************************/ class TRAVEL { public : void INFORMATION(void) ; void RESERVATION(void) ; int RESERVED(int,int,int,int,int) ; int AVAIL(int,int,int,int) ; void DELETION(void) ; void LIST_OF_PASS(void) ; void PASS_INFO(void) ; void MAINMENU(void) ; private : int busno, seatno ; char name[26], sex ; int age, fair ; int dd, mm, yy ; } ; char *place[3]={"Jaipur","Nainital","Chandigarh"} ; int price[3]={220,220,210} ; /***************************************************/ /* THIS FUNCTION DISPLAY THE PASSENGER INFORMATION */ /***************************************************/ void TRAVEL :: PASS_INFO(void) { clrscr() ; int bno=0, found=0, sno, d, m, y ; cout <<"\n Bus 1 : Delhi to Jaipur. <Fare Rs.220>" ; cout <<"\n Bus 2 : Delhi to Nainital. <Fare Rs.220>" ; cout <<"\n Bus 3 : Delhi to Chandigarh. <Fare Rs.210>" ; do { cout <<"\n\n Enter the bus no. (1/2/3) " ; cin >>bno ; } while (bno < 1 || bno > 3) ; cout <<"\n\nEnter the Date of the reserved ticket (dd mm yyyy) : " ; cin >>d >>m >>y ; cout <<"\nEnter the Seat no. : " ; cin >>sno ; if (sno > 60 || sno < 1 || !RESERVED(bno,d,m,y,sno)) { cout <<"\n\n\n Sorry!\7 Seat not reserved" ; getch() ; return ; } fstream file ; file.open("BUS.DAT", ios::in) ; while (file.read((char *) this, sizeof(TRAVEL))) { if ((dd == d && mm == m && yy == y) && bno == busno && sno == seatno) { found = 1 ; clrscr() ; gotoxy(5,5) ; cout<<"****************************************" ; gotoxy(28,7) ; cout <<"K. D. TRAVEL AGENCY" ; gotoxy(10,9) ; cout <<"BUS NO. " <<bno <<"\t\t\t\tDate : " <<d <<"/" <<m <<"/" <<y ; gotoxy(10,10) ; cout <<"Seat no. : " <<sno ; gotoxy(35,12) ; cout <<"From : Delhi" <<"\tTo : " <<place[bno-1] ; gotoxy(10,15) ; cout <<"Passenger name : " <<name ; gotoxy(10,16) ; cout <<"Passenger age : " <<age <<"\t\tSex : " <<sex ; gotoxy(10,18) ; cout <<"Total Fair : " <<price[bno-1] ; gotoxy(5,20) ; cout<<"****************************************" ; gotoxy(1,25) ; cout <<"Press any key to continue..." ; getch() ; break ; } } file.close() ; if (!found) { cout <<"\n\n\7 Passenger record not found" ; getch() ; } } void TRAVEL :: LIST_OF_PASS(void) { clrscr() ; int bno=0, found=0, row=8 ; char ch ; cout <<"\n Bus 1 : Delhi to Jaipur. <Fare Rs.220>" ; cout <<"\n Bus 2 : Delhi to Nainital. <Fare Rs.480>" ; cout <<"\n Bus 3 : Delhi to Chandigarh. <Fare Rs.210>" ; do { cout <<"\n\n Enter the bus no. (1/2/3) " ; cin >>bno ; } while (bno < 1 || bno > 3) ; do { cout <<"\n\n Do you want date wise report (y/n) " ; cin >>ch ; } while (toupper(ch) != 'N' && toupper(ch) != 'Y') ; int d=0, m=0, y=0 ; if (toupper(ch) == 'Y') { cout <<"\n\n Enter the Date for the report (dd mm yyyy) : " ; cin >>d >>m >>y ; } clrscr() ; gotoxy(25,1) ; cout <<"LIST OF THE PASSENGERS" ; gotoxy(24,2) ; cout <<"************************" ; cout <<"\nBus no.: " <<bno <<"\t\t\t\tFrom: Delhi To: " <<place[bno-1] ; gotoxy(2,5) ; cout <<" SEAT NO. PASSENGER NAME SEX AGE DATE" ; gotoxy(1,6) ; cout<<"***************************************" ; fstream file ; file.open("BUS.DAT", ios::in) ; while (file.read((char *) this, sizeof(TRAVEL))) { if (busno == bno) { if ((toupper(ch) == 'N') || ((toupper(ch) == 'Y') && (dd == d && mm == m && yy == y))) { found = 1 ; gotoxy(5,row) ; cout <<seatno ; gotoxy(14,row) ; cout <<name ; gotoxy(43,row) ; cout <<sex ; gotoxy(50,row) ; cout <<age ; gotoxy(61,row) ; cout <<dd<<"/"<<mm<<"/"<<yy ; row++ ; if (row == 25) { getch() ; for (int i=8; i<=24; i++) { gotoxy(1,i) ; clreol() ; } row = 8 ; } } } } file.close() ; if (!found) { cout <<"\n\n\n\n\n\7 No Reservation for the bus no. "<<bno ; getch() ; return ; } cout <<"\n\nPress any key to continue..." ; getch() ; } int TRAVEL :: AVAIL(int bno, int d, int m, int y) { fstream file ; file.open("BUS.DAT",ios::binary | ios::in) ; int avail=0, count=0 ; while (file.read((char *) this, sizeof(TRAVEL))) { if (bno == busno && dd == d && mm == m && yy == y) count++ ; } file.close() ; if (count < 60) avail = 1 ; return avail ; } int TRAVEL :: RESERVED(int bno, int d, int m, int y, int sno) { fstream file ; file.open("BUS.DAT", ios::in) ; int reserved=0 ; while (file.read((char *) this, sizeof(TRAVEL))) { if (bno == busno && dd == d && mm == m && yy == y && sno) { reserved = 1 ; break ; } } file.close() ; return reserved ; } /************************************************/ /* FUNCTION TO RESERVE TICKET FOR THE PASSENGER */ /************************************************/ void TRAVEL :: RESERVATION(void) { clrscr() ; int bno=0, sno=0, pfair=0, page=0 ; char pname[26], psex, ch ; cout <<"\n Bus 1 : Delhi to Jaipur. <Fare Rs.220>" ; cout <<"\n Bus 2 : Delhi to Nainital. <Fare Rs.220>" ; cout <<"\n Bus 3 : Delhi to Chandigarh. <Fare Rs.210>" ; do { cout <<"\n\n Enter the bus no. (1/2/3) " ; cin >>bno ; } while (bno < 1 || bno > 3) ; int d,m,y ; cout <<"\n\nEnter the Date for the reservation (dd mm yyyy) : " ; cin >>d >>m >>y ; if (!AVAIL(bno,d,m,y)) { cout <<"\n\n\n Sorry!\7 Seats not available." ; getch() ; return ; } cout <<"\nEnter the Seat no. : " ; cin >>sno ; if (sno > 60 || sno < 1 || RESERVED(bno,d,m,y,sno)) { cout <<"\n\n\n Sorry!\7 Seat already reserved" ; getch() ; return ; } cout <<"\n Enter Name of passenger : " ; gets(pname) ; do { cout <<" Enter Sex of passenger (M/F) : " ; cin >>psex ; } while (toupper(psex) != 'M' && toupper(psex) != 'F') ; cout <<" Enter age : " ; cin >>page ; if (page <= 5) { cout <<"\7\nNo ticket is required upto age of 5" ; getch() ; return ; } clrscr() ; gotoxy(5,5) ; cout<<"*********************************" ; gotoxy(28,7) ; cout <<"K. D. TRAVEL AGENCY" ; gotoxy(10,9) ; cout <<"BUS NO. " <<bno <<"\t\t\t\tDate : " <<d <<"/" <<m <<"/" <<y ; gotoxy(10,10) ; cout <<"Seat no. : " <<sno ; gotoxy(35,12) ; cout <<"From : Delhi" <<"\tTo : " <<place[bno-1] ; gotoxy(10,15) ; cout <<"Passenger name : " <<pname ; gotoxy(10,16) ; cout <<"Passenger age : " <<page <<"\t\tSex : " <<psex ; gotoxy(10,18) ; cout <<"Total Fair : " <<price[bno-1] ; gotoxy(5,20) ; cout<<"**************************************" ; cout <<"\n\n\n" ; do { cout <<"Do you want to save ticket (y/n) " ; cin >>ch ; } while (toupper(ch) != 'Y' && toupper(ch) != 'N') ; if (toupper(ch) == 'N') return ; fstream file ; file.open("BUS.DAT", ios::app) ; busno = bno ; seatno = sno ; strcpy(name,pname) ; sex = psex ; age = page ; fair = pfair ; dd = d ; mm = m ; yy = y ; file.write((char *) this, sizeof(TRAVEL)) ; file.close() ; } /**********************************************/ /* FUNCTION TO DELETE RECORD OF THE PASSENGER */ /**********************************************/ void TRAVEL :: DELETION(void) { clrscr() ; int bno=0, found=0, sno, d, m, y ; char ch ; cout <<"\n Bus 1 : Delhi to Jaipur. <Fare Rs.220>" ; cout <<"\n Bus 2 : Delhi to Nainital. <Fare Rs.480>" ; cout <<"\n Bus 3 : Delhi to Chandigarh. <Fare Rs.210>" ; do { cout <<"\n\n Enter the bus no. (1/2/3) " ; cin >>bno ; } while (bno < 1 || bno > 3) ; cout <<"\n\nEnter the Date of the reserved ticket (dd mm yyyy) : " ; cin >>d >>m >>y ; cout <<"\nEnter the Seat no. : " ; cin >>sno ; if (sno > 60 || sno < 1 || !RESERVED(bno,d,m,y,sno)) { cout <<"\n\n\n Sorry!\7 Seat not reserved" ; getch() ; return ; } fstream file, temp ; file.open("BUS.DAT", ios::in) ; temp.open("TEMP.DAT", ios::out) ; while (file.read((char *) this, sizeof(TRAVEL))) { if ((dd == d && mm == m && yy == y) && bno == busno && sno == seatno) { found = 1 ; clrscr() ; gotoxy(5,5) ; cout<<"***************************************" ; gotoxy(28,7) ; cout <<"K. D. TRAVEL AGENCY" ; gotoxy(10,9) ; cout <<"BUS NO. " <<bno <<"\t\t\t\tDate : " <<d <<"/" <<m <<"/" <<y ; gotoxy(10,10) ; cout <<"Seat no. : " <<sno ; gotoxy(35,12) ; cout <<"From : Delhi" <<"\tTo : " <<place[bno-1] ; gotoxy(10,15) ; cout <<"Passenger name : " <<name ; gotoxy(10,16) ; cout <<"Passenger age : " <<age <<"\t\tSex : " <<sex ; gotoxy(10,18) ; cout <<"Total Fair : " <<price[bno-1] ; gotoxy(5,20) ; cout<<"****************************************" ; do { gotoxy(1,25) ; clreol() ; cout <<"Do you want to Delete (y/n) " ; cin >>ch ; } while (toupper(ch) != 'Y' && toupper(ch) != 'N') ; if (toupper(ch) == 'N') temp.write((char *) this, sizeof(TRAVEL)) ; } else temp.write((char *) this, sizeof(TRAVEL)) ; } file.close() ; temp.close() ; if (!found) { cout <<"\n\n\7 Passenger record not found" ; getch() ; return ; } if (toupper(ch) == 'N') return ; file.open("BUS.DAT", ios::out) ; temp.open("TEMP.DAT", ios::in) ; while (temp.read((char *) this, sizeof(TRAVEL))) file.write((char *) this, sizeof(TRAVEL)) ; file.close() ; temp.close() ; } void TRAVEL :: INFORMATION(void) { clrscr(); gotoxy(20,8); cout<<"INTRODUCTION OF K. D. TRAVEL AGENCY"; gotoxy(4,10); cout<<"In this agency there is totally three buses whose routes and fair are:" ; gotoxy(15,12); cout <<" Bus 1 : Delhi to Jaipur. <Fare Rs.220>" ; gotoxy(15,13); cout <<" Bus 2 : Delhi to Nainital. <Fare Rs.220>" ; gotoxy(15,14); cout <<" Bus 3 : Delhi to Chandigarh. <Fare Rs.210>" ; gotoxy(4,16); cout<<"You can reserve a ticket of any date and later on cancel the same also. "; gotoxy(28,23); cout<<"Press a Key to continue...." ; getche(); } /*********************************************************************/ /* MAIN FUNCTION WHICH DISPLAY MAIN MENU & CALLS ALL OTHER FUNCTIONS */ /*********************************************************************/ void MAINMENU(void) { TRAVEL travel ; char ch ; while (1) { clrscr() ; gotoxy(26,5) ; cout <<"***************************" ; gotoxy(26,6) ; cout <<"* K. D. TRAVEL AGENCY *" ; gotoxy(26,7) ; cout <<"***************************" ; gotoxy(29,10) ; cout <<"1 :: INTRODUCTION" ; gotoxy(29,11) ; cout <<"2 :: RESERVATION" ; gotoxy(29,12) ; cout <<"3 :: DELETE RECORD" ; gotoxy(29,13) ; cout <<"4 :: PASSENGER LIST" ; gotoxy(29,14) ; cout <<"5 :: PASSENGER INFO." ; gotoxy(29,15) ; cout <<"6 :: QUIT" ; gotoxy(29,18) ; cout <<"Enter your choice :: " ; ch = getche() ; if (ch == 27 || ch == '6') break ; else if (ch == '1') travel.INFORMATION(); else if (ch == '2') travel.RESERVATION() ; else if (ch == '3') travel.DELETION() ; else if (ch == '4') travel.LIST_OF_PASS() ; else if (ch == '5') travel.PASS_INFO() ; } } void main(void) { MAINMENU(); }

Compiling Program...

Command line arguments:
Standard Input: Interactive Console Text
×

                

                

Program is not being debugged. Click "Debug" button to start program in debug mode.

#FunctionFile:Line
VariableValue
RegisterValue
ExpressionValue