Page 385 - C++
P. 385
cout <<"Address: " <<paddress ;
gotoxy(20,15) ;
cout <<"Sex: "<< psex ;
gotoxy(20,17) ;
cout <<"Age: "<<page ;
gotoxy(45,19);
if (pclass == 'E' )
cout<<"Total Fair: "<<ecofair ;
else
cout<<"Total Fair: "<< exefair ;
p.ADD_RECORD(tno, sno, pname, paddress, page, psex, pclass);
getch() ;
}
//---------------------------------------------------------------------------
// FUNCTION TO ADD THE GIVEN DATA IN THE PASSANGER'S FILE
//---------------------------------------------------------------------------
void PASSANGER :: ADD_RECORD(int tno, int sno, char pname[26] , char
paddress[36] , int page, char psex, char pclass)
{
fstream file ;
file.open("PASS.DAT", ios ::app|ios::binary) ;
ticketno = tno ;
slno = sno ;
strcpy(name, pname) ;
strcpy(address,paddress) ;
age = page ;
sex = psex ;
Class = pclass ;
file.write((char *) this, sizeof(PASSANGER)) ;
file.flush();
file.close() ;
}
//---------------------------------------------------------------------------
// THIS FUNCTION RETURN THE LAST TICKET NO. IN THE PASSANGER
// FILE
//---------------------------------------------------------------------------
int PASSANGER :: LAST_TICKETNO(void)
{
fstream file ;
file.open("PASS.DAT", ios ::in|ios::binary) ;
if (file.fail())
{
cout<<"\nFile Open Failed - Last Ticket No\n";
return -1;
}
int count=0 ;
while (file.read((char*) this, sizeof(PASSANGER)))
count = ticketno ;
file.close() ;
return count ;
}
//---------------------------------------------------------------------------
// THIS FUNCTION RETURN TOTAL NO. OF SEATS IN THE PASSANGER
// FILE
//---------------------------------------------------------------------------
int PASSANGER :: SEATS(int sno)
{
fstream file ;
file.open("PASS.DAT", ios ::in|ios::binary) ;
int count=0 ;
while (file.read((char *) this, sizeof(PASSANGER)))
{
if (sno == slno)
count++ ;