Documente Academic
Documente Profesional
Documente Cultură
Laborar 5 Programare
Laborar 5 Programare
RAPORT
Lucrarea de laborator Nr.5
Varianta:8
Tema:”Mostenirea multipla”
2019
Scopul lucrării:
Studierea regulilor de determinare a moştenirii multiple;
Studierea avantajelor şi neajunsurilor moştenirii multiple;
Probleme legate de utilizarea moştenirii multiple;
Studierea rezolvării problemelor;
Sarcina Lucrarii:
a) Să se creeze, o ierarhie de moştenire: undiţă, telescop – undiţă telescopică.
b) Să se creeze, o ierarhie de moştenire: obiect - undiţă, telescop – undiţă telescopică.
a) Codul Programului:
#include <iostream>
#include <string>
class UnditaTelescop
{
protected:
int n;
string company;
public:
UnditaTelescop()
{
cout << "Introduceti denumirea companiei de Lanseta de buzunar: " <<
endl;
cin >> company;
cout << "Introduceti numarul de Lanseta: " << endl;
cin >> n;
}
void ft_show()
{
cout << "Va deserveste compania de Lansete telescopice:" << company
<< endl;
cout << "Numarul de Lansete : " << n << endl;
}
};
class Specificatii
{
protected:
int num;
int pret;
public:
Specificatii()
{
cout << "Introduceti greutatea:" << endl;
cin >> num;
cout << "Introduceti pretul:" << endl;
cin >> pret;
}
void ft_show()
{
cout << "Acesta este greutatea!" << endl;
cout << "Greutatea maxima este de " << num << endl;
cout << "Pretul Lansetei este " << pret << endl;
}
};
public:
Telescop() : UnditaTelescop(), Specificatii()
{
cout << "Introduceti marca lansetei:" << endl;
cin >> marc;
cout << "Introduceti lungimea:" << endl;
cin >> lung;
Telescop :: lung = lung;
}
void ft_show(void)
{
system("cls");
cout<<"Aceasta este o lanseta de marca: " << marc << endl;
UnditaTelescop :: ft_show();
Specificatii :: ft_show();
cout << "Lungimea lansetei este : " << lung << endl;
cout << endl;
}
};
int main()
{
Telescop UnditaTelescopica;
UnditaTelescopica.ft_show();
system("pause");
return (0);
}
Rezultatul Programului:
b) Codul Programului:
#include <iostream>
#include <string>
class Obiect_type
protected:
string type;
string propriety;
public:
Obiect_type()
void ft_show()
cout << "Este o proprietate a companiei " << propriety << endl;
};
protected:
int n;
string company;
public:
ObiectUndita() : Obiect_type()
cin >> n;
}
void ft_show()
Obiect_type :: ft_show();
cout << "Va deserveste compania :" << company << endl;
};
protected:
int num;
int pret;
public:
UnditaTelescopica() : Obiect_type()
void ft_show()
cout << "Numarul maxim de lansete este de " << num << endl;
cout << " Pretul lansetei este de " << pret << endl;
};
class Telescop : public UnditaTelescopica , public Obiect_type
int lung;
string marc;
public:
void ft_show(void)
system("cls");
UnditaTelescopica :: ft_show();
Telescop :: ft_show();
cout << "Lungimea lansetei este : " << lung << endl;
};
int main()
Obiect_type UnditaTelescopica22;
UnditaTelescopica.ft_show();
system("pause");
return (0);
}
Rezultatul Programului:
Concluzie:
In rezultatul elaborarii lucrarii date s-a pus baza aplicarii in practica a cunostintelor
teoretice referitoare la mostenirea multipla.
Astfel se poate judeca despre posibilitatile largi acordate de limbajul C++ referitor la
manipularea claselor.