Documente Academic
Documente Profesional
Documente Cultură
Catedra ISA
RAPORT
Lucrarea de laborator nr.2
la Programarea Orientată pe Obiecte
A efectuat:
st. gr. AI-161 S. Antonov
A verificat:
Lector univ. M. Oșovschi
Chişinău 2017
Lucrarea de laborator nr.2
Constructor prestabilit,
Constructor de copiere,
Constructor cu parametri,
Metodă de inițializare a datelor,
Metodă de afișare a datelor,
Metode de returnare și afișare separată a datelor(opțional)
Clasa va conține metode descrise atît în interior cît și în exteriorul ei. Cel puțin o
metod va fi declarată ca funcție prietenă. După posibilități să se utilizeze pointerul
this și operatorul rezoluție( ::).
#include <iostream>
class Sportiv
{
private:
string nume;
string tara;
int medalii;
int n;
public:
Sportiv()
{
this->nume = "Undefined";
this->tara = "Undefined";
this->medalii = 0;
2
}
void arata_nume();
void arata_tara();
void arata_medalii();
void show()
{
cout<<endl<< "Numele sportivului: "<<nume;
cout<<endl<< "Tara de origine: "<<tara;
cout<<endl<< "Numarul de medalii: "<<medalii;
}
void show_sep()
{
cout<<"\nDoriti sa vizualizate careva date separat (1-Da/0-Nu): ";
cin>>n;
if (n=1)
{
cout<<"\nAlegeti informatia pentru afisare";
3
cout<<"\n1. Doar numele ";
cout<<"\n2. Doar tara ";
cout<<"\n3. Doar numarul de medalii \n";
cin>>n;
switch (n)
{
case '1': cout<<"Numele sportivului este "<<nume << endl; break;
case '2': cout<<"Tara sportivului este " <<tara << endl; break;
case '3': cout<<"Sportivl are urmatorul numar de medalii "<<medalii <<
endl; break;
}
}
}
};
void Sportiv::arata_nume()
{
cout << "\n\nNumele: " << this->nume << endl;
}
void Sportiv::arata_tara()
{
cout << "Tara: " << this->tara << endl;
}
void Sportiv::arata_medalii()
{
cout << "Medalii: " << this->medalii << endl;
}
int main()
{
Sportiv s1,s2;
s1.initiere();
s1.show_sep();
s1.show();
s2.initiere();
s2.show();
//show_sep();
return 0;
}
4
Rezultatele obținute: