Sunteți pe pagina 1din 10

/*Metric conversiion*/ #include<iostream.h> #include<conio.

h> class dist_mm { double mm; public: dist_mm() { } dist_mm(int tmm) { mm=tmm; } float cm_mm (float cm) { mm=cm*10; return mm; } int m_mm(float m) { mm=m*1000; return mm; } int km_mm(int km) { mm=km*1000000; return mm; } double ft_mm(double ft) { mm=ft/0.00328083989501312; } double inch_mm(double inch) { mm=inch/0.0393700787401575; } /* int getmm() { return mm; }*/ void disp() { cout<<"\nMillimetre = "<<mm; } }; class dist_m { double m; public: dist_m()//default constructor { m=0; } dist_m(int tm) { m=tm; }

int cm_m(float cm) { m=cm/100; } float mm_m(float mm) { m=mm/1000; } int km_m(int km) { m=km*1000; } double ft_m(double ft) { m=ft/3.28083989501312; } double inch_m(double inch) { m=inch/39.3700787401575; } /*int getm() { return m; }*/ void disp() { cout<<"Metre = "<<m; } }; class dist_cm { double cm; public: dist_cm() { } dist_cm(int tcm) { cm=tcm; } int m_cm(int m)//conversion using constructor { cm=m*100; return cm; } float mm_cm(float mm) { cm=mm*10; return cm; } int km_cm(int km) { cm=km*100000; return cm; } double ft_cm(double ft) { cm=ft*(0.0328083989501312);

return cm; } double inch_cm(double inch) { cm=inch*(0.393700787401575); return cm; } int getcm() { return cm; } void disp() { cout<<"\nCentimetre = "<<cm; } }; class dist_km { double km; public: dist_km() { } dist_km(int tkm) { km=tkm; } int mm_km(float mm) { km=mm*1000000; return km; } int cm_km(float cm) { km=cm*100000; return km; } int m_km(int m) { km=m*1000; } float ft_km(float ft) { km=ft*3280.83989501312; } float inch_km(double inch) { km=inch*39370.0787401575; } int getkm() { return km; } void disp() { cout<<"\nKilometre = "<<km; } }; class dist_ft {

double ft; public: dist_ft() { } dist_ft(int tft) { ft=tft; } float cm_ft(float cm) { ft=cm/30.48; } double mm_ft(float mm) { ft=mm/304.8; } float m_ft(int m) { ft=m/0.3048; } float km_ft(float km) { ft=km/0.0003048; } double inch_ft(double inch) { ft=inch/12; } /*int getft() { return ft; }*/ void disp() { cout<<"\nFeet = "<<ft; } }; class dist_inch { double inch; public: dist_inch() { } dist_inch(int tinch) { inch=tinch; } float cm_inch(float cm) { inch=cm/2.54; } float mm_inch(double mm) { inch=mm/25.4; } float m_inch(int m) { inch=inch/.0254;

} float km_inch(int km) { inch=km*39370.0787401575; } float ft_inch(float ft) { inch=ft*12; } /*int getinch() { return inch; }*/ void disp() { cout<<"\nInch = "<<inch; } }; int main() { int m,km; float cm,mm; double ft,inch; int ch,innerch; char choice; /*declaration of objects for all the 6 classes*/ dist_mm obj1; dist_cm obj2; dist_m obj3; dist_km obj4; dist_ft obj5; dist_inch obj6; /*Display of outer menu*/ do { cout<<"\nMenu for length converter application"<<endl<<"\nConversion of un its from:"<<endl; cout<<"\n1.Millimetre\n2.Centimetre\n3.Metre\n4.Kilometre\n5.Feet\n6.Inch" <<endl; cout<<"\nEnter the choice: "; cin>>ch; switch(ch) { case 1: cout<<"\nEnter the millimetre: "; cin>>mm; obj1=(mm); /*display of inner menu*/ cout<<"\nConversion of units to: "; cout<<"\n1.Millimetre\n2.Centimetre\n3.Metre\n4.Kilometre\n 5.Feet\n6.Inch"<<endl; cout<<"\nEnter the choice: "; cin>>innerch; switch(innerch) { case 1: cout<<"\nThe distance is already in the same unit!!!"; break; case 2:

obj2.mm_cm(mm); obj1.disp(); obj2.disp(); break; case 3: obj3.mm_m(mm); obj1.disp(); obj3.disp(); break; case 4: obj4.mm_km(mm); obj1.disp(); obj4.disp(); break; case 5: obj5.mm_ft(mm); obj1.disp(); obj5.disp(); break; case 6: obj6.mm_inch(mm); obj1.disp(); obj6.disp(); break; default:cout<<"\nInvalid choice"; } break; case 2: cout<<"\nEnter the centimetre: "; cin>>cm; obj2=cm; /*display of inner menu*/ cout<<"\nConversion of units to: "; cout<<"\n1.Millimetre\n2.Centimetre\n3.Metre\n4.Kilometre\n 5.Feet\n6.Inch"<<endl; cout<<"\nEnter the choice: "; cin>>innerch; switch(innerch) { case 1: obj1.cm_mm(cm); obj2.disp(); obj1.disp(); break; case 2: cout<<"\nThe distance is already in the same unit!!!"; break; case 3: obj3.cm_m(cm); obj2.disp(); obj3.disp(); break; case 4: obj4.cm_km(cm); obj2.disp(); obj4.disp(); break;

case 5: obj5.cm_ft(cm); obj2.disp(); obj5.disp(); break; case 6: obj6.cm_inch(cm); obj2.disp(); obj6.disp(); break; default:cout<<"\nInvalid choice"; } break; case 3: cout<<"\nEnter the metre: "; cin>>m; obj3=m; /*display of inner menu*/ cout<<"\nConversion of units to: "; cout<<"\n1.Millimetre\n2.Centimetre\n3.Metre\n4.Kilometre\n 5.Feet\n6.Inch"<<endl; cout<<"\nEnter the choice: "; cin>>innerch; switch(innerch) { case 1: obj1.m_mm(m); obj3.disp(); obj1.disp(); break; case 2: obj3.cm_m(cm); obj3.disp(); obj2.disp(); break; case 3: cout<<"\nThe distance is already in the same unit!!!"; break; case 4: obj4.m_km(m); obj3.disp(); obj4.disp(); break; case 5: obj5.m_ft(m); obj3.disp(); obj5.disp(); break; case 6: obj6.m_inch(m); obj3.disp(); obj6.disp(); break; default:cout<<"\nInvalid choice"; } break;

case 4: cout<<"\nEnter the kilometre: "; cin>>km; obj4=km; /*display of inner menu*/ cout<<"\nConversion of units to: "; cout<<"\n1.Millimetre\n2.Centimetre\n3.Metre\n4.Kilometre\n 5.Feet\n6.Inch"<<endl; cout<<"\nEnter the choice: "; cin>>innerch; switch(innerch) { case 1: obj1.km_mm(km); obj4.disp(); obj1.disp(); break; case 2: obj2.km_cm(km); obj4.disp(); obj2.disp(); break; case 3: obj3.km_m(km); obj4.disp(); obj3.disp(); break; case 4: cout<<"\nThe distance is already in the same unit!!!"; break; case 5: obj5.km_ft(km); obj4.disp(); obj5.disp(); break; case 6: obj6.km_inch(km); obj4.disp(); obj6.disp(); break; default:cout<<"\nInvalid choice"; } break; case 5: cout<<"\nEnter the feet: "; cin>>ft; obj5=ft; /*display of inner menu*/ cout<<"\nConversion of units to: "; cout<<"\n1.Millimetre\n2.Centimetre\n3.Metre\n4.Kilometre\n 5.Feet\n6.Inch"<<endl; cout<<"\nEnter the choice: "; cin>>innerch; switch(innerch)

{ case 1: obj1.ft_mm(ft); obj5.disp(); obj1.disp(); break; case 2: obj2.ft_cm(ft); obj5.disp(); obj2.disp(); break; case 3: obj3.ft_m(ft); obj5.disp(); obj3.disp(); break; case 4: obj4.ft_km(ft); obj5.disp(); obj4.disp(); break; case 5: cout<<"\nThe distance is already in the same unit!!!"; break; case 6: obj6.ft_inch(ft); obj5.disp(); obj6.disp(); default:cout<<"\nInvalid choice"; } break; case 6: cout<<"\nEnter the inch: "; cin>>inch; obj6=inch; /*display of inner menu*/ cout<<"\nConversion of units to: "; cout<<"\n1.Millimetre\n2.Centimetre\n3.Metre\n4.Kilometre\n 5.Feet\n6.Inch"<<endl; cout<<"\nEnter the choice: "; cin>>innerch; switch(innerch) { case 1: obj1.inch_mm(inch); obj6.disp(); obj1.disp(); break; case 2: obj2.inch_cm(inch); obj6.disp(); obj2.disp();

break; case 3: obj3.inch_m(inch); obj6.disp(); obj3.disp(); break; case 4: obj4.inch_km(inch); obj6.disp(); obj4.disp(); break; case 5: obj5.inch_ft(inch); obj6.disp(); obj5.disp(); break; case 6: cout<<"\nThe distance is already in the same unit!!!"; break; default:cout<<"\nInvalid choice"; } break; cout<<"\nDo you want to continue (y/n): "; cin>>choice; } }while(choice='y' 'Y'); getch(); return 0; }

S-ar putea să vă placă și