Sunteți pe pagina 1din 5

Ministerul Educaţiei al Republicii Moldova

Universitatea Tehnică a Moldovei

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

Tema: Supraîncărcarea operatorilor

Scopul lucrării: familiarizarea studenților cu noțiunile operatori supraîncărcați.

Condiţia problemei (sarcina de lucru):


Varianta 14:
Să se scrie un program pentru implimentarea unei clase care include un set de
date specifice cît și următoarele metode:

 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( ::).

Sportiv – numele, țara, numărul de medalii.

Codul (textul) programului în limbajul C:

#include <iostream>

using namespace std;

class Sportiv
{
private:
string nume;
string tara;
int medalii;
int n;

public:
Sportiv()
{
this->nume = "Undefined";
this->tara = "Undefined";
this->medalii = 0;
2
}

Sportiv(string nume, string tara, int medalii)


{
this->nume = nume;
this->tara = tara;
this->medalii = medalii;
}

Sportiv(const Sportiv &a)


{
this->nume = a.nume;
this->tara = a.tara;
this->medalii = a.medalii;
}

void initiere ()//(string nume, string tara, int medalii)


{
cout<<"\nDati datele despre sportiv: ";
cout<<"\nDati numele sportivului: ";
cin>>nume;
cout<<"Dati tara sportivului: ";
cin>>tara;
cout<<"Dati nr. de medalii a sportivului: ";
cin>>medalii;
}

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:

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

  • Luc. Lab. nr.1
    Luc. Lab. nr.1
    Document15 pagini
    Luc. Lab. nr.1
    Ciobanu Alina
    Încă nu există evaluări
  • Aforisme
    Aforisme
    Document1 pagină
    Aforisme
    Ciobanu Alina
    Încă nu există evaluări
  • Prezentare Somipp
    Prezentare Somipp
    Document293 pagini
    Prezentare Somipp
    Ciobanu Alina
    Încă nu există evaluări
  • Raport Sda Lab2
    Raport Sda Lab2
    Document6 pagini
    Raport Sda Lab2
    Ciobanu Alina
    Încă nu există evaluări
  • Raportul Problemei
    Raportul Problemei
    Document7 pagini
    Raportul Problemei
    Ciobanu Alina
    Încă nu există evaluări
  • SDA Lab 1
    SDA Lab 1
    Document16 pagini
    SDA Lab 1
    Ciobanu Alina
    Încă nu există evaluări
  • Materiale de Construcții
    Materiale de Construcții
    Document9 pagini
    Materiale de Construcții
    Ciobanu Alina
    Încă nu există evaluări
  • Solutii ORI 2006
    Solutii ORI 2006
    Document106 pagini
    Solutii ORI 2006
    Ciobanu Alina
    Încă nu există evaluări
  • Introducere in Baze de Date
    Introducere in Baze de Date
    Document18 pagini
    Introducere in Baze de Date
    Vitalik Balanici
    Încă nu există evaluări
  • Cerinte Teza
    Cerinte Teza
    Document13 pagini
    Cerinte Teza
    Dumitru Roibu
    Încă nu există evaluări
  • Problema 1
    Problema 1
    Document2 pagini
    Problema 1
    Ciobanu Alina
    Încă nu există evaluări