chitrangda Posted October 14, 2008 Posted October 14, 2008 i was working on a project. #include<iostream.h> #include<conio.h> void main() { int date(); int d; int data; cout<<"enter the date"; cin>>d; data=date(); getch(); } date(int d) { static int f=1; if(d>31) { cout<<"enter a valid date"; date(d); } return f; } please help me run this program.
timo Posted October 14, 2008 Posted October 14, 2008 - You can use the [ code] <code here> [ /code] brackets to make the code more readable: #include <iostream> // for text input and output using namespace std; // std::cout -> cout int main() { // Ask user to guess a number. cout<<"Enter a guess for the number of errors in your code: "; int errors; cin>>errors; // React on ridiculous guesses. if (errors==0) cout<<"You wish!"<<endl; } - You should comment your code; you did not even say what it is supposed to do (my example did not either - because it is silly). - Start with the snippet I gave you and replace parts of my code with yours. Your code is so erroneous I don't think it is worth keeping. - Utter-newbie tip: Compile early, compile often. If two new lines make the previously-compiling code fail, it must be related to those two lines. 1
chitrangda Posted October 16, 2008 Author Posted October 16, 2008 code: #include<iostream.h> #include<conio.h> void main() { int date(); int d; int data; cout<<"enter the date"; cin>>d; data=date(); getch(); } date(int d) { static int f=1; if(d>31) { cout<<"enter a valid date"; date(d); } return f; } i wanted that function date should be called again and again until and unless proper condition is saticified.
chitrangda Posted October 21, 2008 Author Posted October 21, 2008 it has to accecpt date from the user and keep asking the data until the user inserts correct date i.e;number below 31.
timo Posted October 21, 2008 Posted October 21, 2008 I don't really see why you did not follow my advice. Even if I had the Windows-only file conio.h installed on my system I really doubt your code would even compile; lines like "int date();" in a source block just seem wrong to me. Even if your code did compile you should at least see warnings like the one that tells you you should include <iostream> instead of <iostream.h>. And I still think you should comment each step your program is supposed to do. While it seems clear to me that the mentioned "int date();" should not compile you probably had a reason to add that line but it is absolutely unclear why you thought it should be there and what you wanted to achieve with this line.
chitrangda Posted October 31, 2008 Author Posted October 31, 2008 my complete program now works(though i worked on it in tits and bits!) #include<iostream.h> #include<conio.h> #include<stdio.h> #include<process.h> #include<fstream.h> #include<string.h> int ad=0,ch=0,a2,flight,flag=0,tage,tticketno=200; char tname[30]; class airline { char name[30]; int age; unsigned long int basic,fuel,travelling,total; char flightname[30],flightno[30]; char orgin[30],destination[30],tclass[20]; public: int dd,mm,yyyy,ticketno; void datainput(); void dataprocessing(); void datadisplay(); void menu(); void findlastticketno(); void ticketcancel(); } item; struct date { int day_no; int month; int year; } d1; void airline::menu() { clrscr(); cout<<"WELCOME TO CIS RESERVATION CENTER\n"; cout<<"\n MENU\n"; cout<<"1: TICKET BOOKING\n"; cout<<"2: TICKET PRINTING\n"; cout<<"3. TICKET CANCELLING\n"; cout<<"4: EXIT\n"; } class flight { public: void routes(); void available(); void domestic(); void dateflagchecking(); void feeclass(); } f1; void flight::routes() { cout<<"\n"; cout<<"Ticket Booking\n"; cout<<"Available Destinations\n"; cout<<"1 : INDIA TO BANGKOK" <<"\t"<<"11: INDIA TO LONDON" <<"\n"; cout<<"2 : INDIA TO DUBAI" <<"\t"<<"12: NEW YORK TO INDIA" <<"\n"; cout<<"3 : DELHI TO MUMBAI " <<"\t"<<"13: HYDERABAD TO CHENNAI"<<"\n"; cout<<"4 : BANGKOK TO INDIA" <<"\t"<<"14: CHENNAI TO MUMBAI" <<"\n"; cout<<"5 : MALAYSIA TO INDIAt" <<"\t"<<"15: DELHI TO CHENNAI" <<"\n"; cout<<"6 : INDIA TO NEW YORK" <<"\t"<<"16: CHENNAI TO HYDERABAD"<<"\n"; cout<<"7 : MUMBAI TO CHENNAI" <<"\t"<<"17: INDIA TO MALAYSIA" <<"\n"; cout<<"8 : DUBAI TO INDIA" <<"\t"<<"18: HYDERABAD TO MUMBAI" <<"\n"; cout<<"9 : MUMBAI TO HYDERABAD"<<"\t"<<"19: CHENNAI TO DELHI" <<"\n"; cout<<"10: MUMBAI TO DELHI" <<"\t"<<"20: LONDON TO INDIA" <<"\n"; } void flight::available() { cout<<"FLIGHTS AVAILABLE FOR INTERNATIONAL DESTINATIONS\n"; cout<<"Flight Name" <<"\t"<<"Flight NO."<<"\n"; cout<<"1: Air India" <<"\t"<<"AI 2535" <<"\n"; cout<<"2: JetAirways" <<"\t"<<"JA 4685" <<"\n"; cout<<"3: Kingfisher" <<"\t"<<"KF 2498" <<"\n"; cout<<"4: AirIndia" <<"\t"<<"AI 0787" <<"\n"; cout<<"5: KIngfisher" <<"\t"<<"KF 3245" <<"\n"; cout<<"6: Jet Airways"<<"\t"<<"JA 1868" <<"\n"; } void flight::domestic() { cout<<"FLIGHTS AVAILABLE FOR DOMESTIC DESTINATIONS\n"; cout<<"Flight Name" <<"\t"<<"Flight NO."<<"\n"; cout<<"1: Indian Airlines" <<"\t"<<"IA 2538" <<"\n"; cout<<"2: Spicejet" <<"\t"<<"SJ 5736" <<"\n"; cout<<"3: JetAirways" <<"\t"<<"JA 4485" <<"\n"; cout<<"4: Kingfisher" <<"\t"<<"KF 8498" <<"\n"; cout<<"5: Air Deccan" <<"\t"<<"AD 3517" <<"\n"; cout<<"6: Indian Airlines" <<"\t"<<"IA 0797" <<"\n"; cout<<"7: KIngfisher" <<"\t"<<"KF 3545" <<"\n"; cout<<"8: Air Deccan" <<"\t"<<"AD 1379" <<"\n"; cout<<"9: Jet Airways" <<"\t"<<"JA 1808" <<"\n"; cout<<"10:Spicejet" <<"\t"<<"SJ 2564" <<"\n"; } void flight::feeclass() { cout<<"Please enter in class which do you want to sit\n"; cout<<"1: First Class\n"; cout<<"2: Economy Class\n"; cout<<"3: Executive class\n"; } void flight::dateflagchecking() { do { flag=0; cout<<"Please enter the date you are boarding the plane\n"; cout<<"Date"<<"\t"; cin>>d1.day_no; if(d1.day_no<=31) { cout<<"\n"; cout<<"Month"<<"\t"; cin>>d1.month; if(d1.month<=12) { cout<<"\n"; cout<<"Year"<<"\t"; cin>>d1.year; if(d1.year==2008) { flag=1; item.dd=d1.day_no; item.mm=d1.month; item.yyyy=d1.year; } } } else { flag=0; cout<<"\nInvalid Date ... \nRetry again..."; } } while(flag!=1); } void airline::datainput() { if (flag==1) { cout<<"\nName "; gets(tname); cout<<"\nAge "; cin>>tage; strcpy(item.name,tname); item.age=tage; } } void airline::dataprocessing() { int c; basic=0; fuel=0; travelling=0; total=0; strcpy(flightname,""); strcpy(flightno,""); strcpy(orgin,""); strcpy(destination,""); if(a2==1||a2==2||a2==4||a2==5||a2==6||a2==8||a2==11||a2==12||a2==17||a2==20) { f1.available(); cout<<"Please enter your choice\n"; cin>>flight; if (flight==1) strcpy(flightname," Air India"), strcpy(flightno,"AI 2535"); if (flight==2) strcpy(flightname," JetAirways"), strcpy(flightno,"JA 4685"); if (flight==3) strcpy(flightname," Kingfisher"), strcpy(flightno,"KF 2498"); if (flight==4) strcpy(flightname," AirIndia"), strcpy(flightno,"AI 0787"); if (flight==5) strcpy(flightname," Kingfisher"), strcpy(flightno,"KF 3245"); if (flight==6) strcpy(flightname," Jet Airways"), strcpy(flightno,"JA 1868"); f1.feeclass(); cout<<"Please enter your choice\n"; cin>>c; if (c==1) strcpy(tclass,"First"); if (c==2) strcpy(tclass,"Economy"); if (c==3) strcpy(tclass,"Executive"); switch(c) { case 1: if(a2==1||a2==4) fuel=18000; else if(a2==2||a2==8) fuel=16000; else if(a2==5||a2==17) fuel=14000; else if(a2==6||a2==12) fuel=32000; else if(a2==11||a2==20) fuel=26000; basic=12000; cout<<"\nTotal Cost=\n"; cout<<"\nBasic Fare="<<basic; cout<<"\nFuel charges=Rs"<<fuel; travelling=15000; cout<<"\nTravelling Charges="<<travelling; total=12000+15000+fuel+(8000*ad)+(5000*ch); cout<<"\nTotal Charges = Rs."<<total; break; case 2: if(a2==1||a2==4) fuel=20000; else if(a2==2||a2==8) fuel=18000; else if(a2==5||a2==17) fuel=16000; else if(a2==6||a2==12) fuel=34000; else if(a2==11||a2==20) fuel=28000; cout<<"\nTotal Cost=\n"; basic=14000; cout<<"\nBasic Fare=Rs"<<basic; cout<<"\nFuel charges=Rs"; cout<<fuel; travelling=17000; cout<<"\nTravelling Charges=Rs."<<travelling; total=14000+17000+fuel+(10000*ad)+(7000*ch); cout<<"\nTotal Charges = Rs."<<total; break; case 3: if(a2==1||a2==4) fuel=22000; else if(a2==2||a2==8) fuel=20000; else if(a2==5||a2==17) fuel=18000; else if(a2==6||a2==12) fuel=36000; else if(a2==11||a2==20) fuel=30000; cout<<"\nTotal Cost\n"; basic=16000; cout<<"\nBasic Fare=Rs "<<basic; cout<<"\nFuel charges=Rs "<<fuel; travelling=19000; cout<<"\nTravelling Charges=Rs."<<travelling; total=16000+19000+fuel+(12000*ad)+(9000*ch); cout<<"\nTotal Charges = Rs."<<total; break; } } else { f1.domestic(); cout<<"\nPlease enter your choice "; cin>>flight; if (flight==1) strcpy(flightname,"Indian Airlines"), strcpy(flightno,"IA 2538"); if (flight==2) strcpy(flightname,"2: Spicejet"), strcpy(flightno, "SJ 5736"); if (flight==3) strcpy(flightname,"3: JetAirways"), strcpy(flightno, "JA 4485"); if (flight==4) strcpy(flightname,"4: Kingfisher"), strcpy(flightno, "KF 8498"); if (flight==5) strcpy(flightname,"5: Air Deccan"), strcpy(flightno, "AD 3517"); if (flight==6) strcpy(flightname,"6: Indian Airlines"), strcpy(flightno, "IA 0797"); if (flight==7) strcpy(flightname,"7: KIngfisher"), strcpy(flightno, "KF 3545"); if (flight==8) strcpy(flightname,"8: Air Deccan"), strcpy(flightno, "AD 1379"); if (flight==9) strcpy(flightname,"9: Jet Airways"), strcpy(flightno, "JA 1808"); if (flight==10) strcpy(flightname,"10:Spicejet"), strcpy(flightno, "SJ 2564"); f1.feeclass(); cout<<"\nPlease enter your choice\n"; cin>>c; if (c==1) strcpy(tclass,"First"); if (c==2) strcpy(tclass,"Economy"); if (c==3) strcpy(tclass,"Executive"); switch(c) { case 1: if(a2==3||a2==10) fuel=1800; else if(a2==7||a2==14) fuel=1600; else if(a2==9||a2==18) fuel=1400; else if(a2==13||a2==16) fuel=3200; else if(a2==15||a2==19) fuel=2600; cout<<"\nTotal Cost\n"; basic=1200; cout<<"\nBasic Fare=Rs "<<basic; cout<<"\nFuel charges=Rs "<<fuel; travelling=1500; cout<<"\nTravelling Charges=Rs "<<travelling; total=1200+1500+fuel+(800*ad)+(500*ch); cout<<"\nTotal Charges = Rs."<<total; break; case 2: if(a2==3||a2==10) fuel=2000; else if(a2==7||a2==14) fuel=1800; else if(a2==9||a2==18) fuel=1600; else if(a2==13||a2==16) fuel=3400; else if(a2==15||a2==19) fuel=2800; cout<<"\nTotal Cost=\n"; basic=1400; cout<<"\nBasic Fare=Rs "<<basic; cout<<"\nFuel charges=Rs "<<fuel; travelling=1700; cout<<"\nTravelling Charges=Rs "<<travelling; total=1400+1700+fuel+(1000*ad)+(700*ch); cout<<"\nTotal Charges = Rs."<<total; break; case 3: if(a2==3||a2==10) fuel=2200; else if(a2==7||a2==14) fuel=2000; else if(a2==9||a2==18) fuel=1800; else if(a2==13||a2==16) fuel=3600; else if(a2==15||a2==19) fuel=3000; cout<<"\nTotal Cost=\n"; basic=1600; cout<<"\nBasic Fare=Rs "<<basic; cout<<"\nFuel charges=Rs "<<fuel; travelling=1900; cout<<"\nTravelling Charges=Rs "<<travelling; total=1600+1900+fuel+(1200*ad)+(900*ch); cout<<"\nTotal Charges = Rs."<<total; break; } } if (a2==1) strcpy(orgin,": INDIA"), strcpy(destination,"BANGKOK"); if (a2==11) strcpy(orgin,": INDIA"), strcpy(destination,"LONDON"); if (a2==2) strcpy(orgin,": INDIA"), strcpy(destination,"DUBAI"); if (a2==12) strcpy(orgin,": NEW YORK"),strcpy(destination,"INDIA"); if (a2==3) strcpy(orgin,": DELHI"), strcpy(destination,"MUMBAI "); if (a2==13) strcpy(orgin,": HYDERABAD"),strcpy(destination,"CHENNAI"); if (a2==4) strcpy(orgin,": BANGKOK"),strcpy(destination,"INDIA"); if (a2==14) strcpy(orgin,": CHENNAI"),strcpy(destination,"MUMBAI"); if (a2==5) strcpy(orgin,": MALAYSIA"),strcpy(destination,"INDIA"); if (a2==15) strcpy(orgin,": DELHI"),strcpy(destination,"CHENNAI"); if (a2==6) strcpy(orgin,": INDIA"),strcpy(destination,"NEW YORK"); if (a2==16) strcpy(orgin,": CHENNAI"),strcpy(destination,"HYDERABAD"); if (a2==7) strcpy(orgin,": MUMBAI"),strcpy(destination,"CHENNAI"); if (a2==17) strcpy(orgin,": INDIA"),strcpy(destination, "MALAYSIA"); if (a2==8) strcpy(orgin,": DUBAI"),strcpy(destination, "INDIA"); if (a2==18) strcpy(orgin,": HYDERABAD"),strcpy(destination, " MUMBAI"); if (a2==9) strcpy(orgin,": MUMBAI "),strcpy(destination, "HYDERABAD"); if (a2==19) strcpy(orgin,": CHENNAI"),strcpy(destination, "DELHI"); if (a2==10) strcpy(orgin,": MUMBAI"),strcpy(destination, "DELHI"); if (a2==20) strcpy(orgin,": LONDON"),strcpy(destination, "INDIA"); ticketno++; item.ticketno=ticketno; } void airline::datadisplay() { int p; cout<<"\n-------------------------------------------------------"; cout<<"\nticket no."<<"\t"<<ticketno; cout<<"\nFlight name: "<<flightname; cout<<"\tFlight no. : "<<flightno; cout<<"\nOrigin: "<<orgin; cout<<"\tDestination: "<<destination; cout<<"\nName :"<<name; cout<<"\tAge :"<<age; cout<<"\nday "<<dd; cout<<" month "<<mm; cout<<" year "<<yyyy; cout<<" --- Class "<<tclass; cout<<"\nBasic Rs. "<<item.basic; cout<<"\tFuel Rs. "<<item.fuel; cout<<"\tTravelling Rs. "<<item.travelling; cout<<"\tTotal Rs. "<<item.total; cout<<"\n**Happy Journey**(Note:Charges depend on Class in which U Travel:-)"; tage=item.age; } void airline::findlastticketno() { fstream filfltn; filfltn.open("airline.dat",ios::in); filfltn.seekg(0,ios::beg); do { if (!filfltn.fail()) { if (!filfltn.eof()) { filfltn.read((char*)&item,sizeof(airline)); tticketno=item.ticketno; } } else { tticketno=200; item.ticketno=tticketno; /*cout<<"\n File is Empty..."; */ break; } } while(!filfltn.eof()); filfltn.close(); } void airline::ticketcancel() { fstream tfilin; fstream filin; filin.open("airline.dat",ios::in); tfilin.open("tairline.dat",ios::out); filin.seekg(0,ios::beg); cout<<"\nEnter the TICKET NO. to Cancel :-"; cin>>tticketno; flag=0; while (!filin.eof()) { if (!filin.fail()) { filin.read((char*)&item,sizeof(airline)); if (!filin.eof()) { if (item.ticketno==tticketno) { flag=1; cout<<"\n TICKET No Exist.... Details are:-"; item.datadisplay(); cout<<"\n TICKET No. Has been CANCELLED..."; } else tfilin.write((char*)&item,sizeof(airline)); } else break; } else { cout<<"\n File Fail to open..."; cout<<"\n File is Empty..."; break; } } filin.close(); tfilin.close(); if (flag==1) { filin.open("airline.dat",ios::out); tfilin.open("tairline.dat",ios::in); tfilin.seekg(0,ios::beg); while (!tfilin.eof()) { if (!tfilin.fail()) { tfilin.read((char*)&item,sizeof(airline)); if (!tfilin.eof()) filin.write((char*)&item,sizeof(airline)); else break; } } } else cout<<"\n Sorry TICKET No. Does Not Exits..."; tfilin.close(); filin.close(); } void main() { int c,p; char choice; clrscr(); do { item.menu(); cout<<"Enter your choice\n"; cin>>c; switch(c) { case 1: cout<<"\n"; cout<<"\nPlease enter the no. of persons boarding\n"; cin>>p; if(p>200) { cout<<"\nSorry!seats are not available\n"; cout<<"\nPlease book in other classes"; break; } item.findlastticketno(); fstream filin; filin.open("airline.dat",ios::app); while(p!=0) { f1.routes(); cout<<"Please enter the code no. of the routes\n"; cin>>a2; f1.dateflagchecking(); cout<<"\n"; item.datainput(); item.dataprocessing(); filin.write((char*)&item,sizeof(airline)); p--; } filin.close(); break; case 2: ch=0,ad=0; fstream filre; filre.open("airline.dat",ios::in); filre.seekg(0,ios::beg); while (!filre.eof()) { if (!filre.fail()) { filre.read((char*)&item,sizeof(airline)); if (!filre.eof()) { item.datadisplay(); if (tage<=12) ch++; else ad++; } } else { cout<<"\n File Fail to open..."; cout<<"\n File is Empty..."; break; } } filre.close(); break; case 3: item.ticketcancel(); break; case 4: exit(0); } cout<<"\nDo U Want to Continue.... Enter[Y][y] or [N][n]: "; cin>>choice; } while(choice=='y'||choice=='Y'); cout<<"\nNo. of persons boarding"<<"\t"<<ad+ch; cout<<"\nadults :"<<ad; cout<<"\tchildren :"<<ch; getch(); }
NeonBlack Posted October 31, 2008 Posted October 31, 2008 If you're using c++ then your #include'd headers should be <iostream> not <iostream.h> main() returns int You could easily avoid using the non-standard headers such as conio. As it is, your code will not work on most compilers. clrscr(); ^ bookworm.cpp(39) : Error: undefined identifier 'clrscr' clrscr(); ^ bookworm.cpp(505) : Error: undefined identifier 'clrscr'
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now