Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- using namespace std;
- /*Scrieti un program in care sa utilizati urmatoarele clase:
- -Avioane(clasa de baza) cu datele memv=bre: fabricant, model, pret
- -Pasageri (clasa derivata din aavioane) cu datele membre: numar pasageri etajat, numar membrii echipaj
- -Marfa( clasa derivata din avioane) cu datele membre: capacitate(m^3), tonaj(t)
- Creati urmatoarele functii membre: constructori faar parametrii, constructori cu parametrii, functii de acces oentru toate datele membre
- Supraincarcato operatorul <<
- Afisati continutul obiectelor cu operatorul supraincarcat3
- */
- class avioane{
- public:
- string fabricant;
- string model;
- int pret;
- avioane (){fabricant="Necunoscut";model="Necunoscut";pret=0;}
- avioane(string fabr,string mod,int pr){fabricant=fabr;model=mod;pret=pr;}
- void set_fabricant(string fabr){fabricant=fabr;}
- void set_model(string mod){model=mod;}
- void set_pret(int pr){pret=pr;}
- string get_fabricant(){return fabricant;}
- string get_model(){return model;}
- int get_pret(){return pret;}
- friend ostream& operator<<(ostream &,const avioane &);
- };
- class pasageri : public avioane{
- private:
- int nr_psg_etajat; //numar pasageri..
- int nr_psg_echipaj;
- public:
- pasageri(){nr_psg_etajat=0;nr_psg_echipaj=0;}
- pasageri(int nrpaset,int nrpasec,string mdl,string fbr,int pr ):nr_psg_etajat(nrpaset),nr_psg_echipaj(nrpasec),avioane(fbr,mdl,pr){//mdl-model; fbr-fabricant; pr=pret
- }
- void set_nrpsg1(int nrpsgetj){nr_psg_etajat=nrpsgetj;}
- void set_nrpsg2(int nrpsgech){nr_psg_echipaj=nrpsgech;}
- int get_nrpsg1(){return nr_psg_etajat;}//nrpsg1-numarul asagerilor etajati
- int get_nrpsg2(){return nr_psg_echipaj;}//nrpsg2- numarul pasagerilor echipaj
- friend ostream& operator<<(ostream &,const pasageri &);
- };
- class marfa : public avioane{
- private:
- float capacitate;
- float tonaj;
- public:
- marfa(){capacitate=0;tonaj=0;}
- marfa(float capacit,float tona,string mdl,string fbr,int pr ):capacitate(capacit),tonaj(tona),avioane(fbr,mdl,pr){
- }
- void set_capacitate(float capac){capacitate=capac;}
- void set_tonaj(float tona){tonaj=tona;}
- float get_capacitate(){return capacitate;}
- float get_tonaj(){return tonaj;}
- friend ostream& operator<<(ostream &,const marfa &);
- };
- ostream& operator<<(ostream &p,const avioane &av)
- {
- p<<"Fabricant:"<<av.fabricant<<"; Model:"<<av.model<<" Pret:"<<av.pret<<" milioane dolari ";
- return p;
- }
- ostream& operator<<(ostream &p,const pasageri &pas)
- {
- p<<avioane(pas)<<"; Numar pasageri etajati:"<<pas.nr_psg_etajat<<"; Numar pasageri echipaj:"<<pas.nr_psg_echipaj;
- return p;
- }
- ostream& operator<<(ostream &p,const marfa &mar)
- {
- p<<avioane(mar)<<"; Capacitate:"<<mar.capacitate<<" m^3"<<"; Tonaj:"<<mar.tonaj<<" tone";
- return p;
- }
- int main(){
- pasageri psg(156,15,"Boeing 727","Boeing Commercial Airplanes",22);
- cout<<psg<<endl;
- marfa mrf(28.698,70.53,"Boeing 727","Boeing Commercial Airplanes",22);
- cout<<mrf;
- return 0;}
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement