Documente Academic
Documente Profesional
Documente Cultură
Educaţiei, Culturii și Cercetării al Republicii Moldova
Universitatea Tehnică a Moldovei
Departamentul Informatică și Ingineria sistemelor
Raport
Lucrare de laborator nr. 2
la POO
V-11
A efectuat:
st.gr. CR-202 Barbacari Daniel
A verificat: Pasat Natalia
Scopul lucrării:
Studierea principiilor de definire şi utilizare a constructorilor
Studierea principiilor de definire şi utilizare a destructorilor
Studierea tipurilor de constructori
Sarcină: Varianta 11
а) Să se creeze clasa Group – grupa, care conţine informaţia despre codul grupei,
specialitatea, numărul de studenţi, curatorul grupei şi anul de studii. Să se utilizeze
memoria dinamică pentru setarea cîmpurilor textuale. Să se definească: toate tipurile
de constructori; funcţiile de schimbare a curatorului şi a numărului de studenţi. Să se
definească funcţia de setare a anului de studii în aşa fel, încît valoarea acestui cîmp să
poată fi mărită şi să nu depăşească cifra 5.
b) Să se creeze clasa Matrix – matrice. Clasa conţine pointer spre char, numărul de
rînduri şi de coloane şi o variabilă – codul erorii. Să se definească constructorul fără
parametri (constructorul implicit), constructorul cu un parametru – matrice pătrată şi
constructorul cu doi parametri – matrice dreptunghiulară ş. a. Să se definească
funcţiile membru de acces: returnarea şi setarea valorii elementului (i,j). Să se
definească funcţiile de adunare şi scădere a două matrice; înmulţirea unei matrice cu
alta; înmulţirea unei matrice cu un număr. Să se testeze funcţionarea clasei. În caz de
insuficienţă de memorie, necorespondenţă a dimensiunilor matricelor, depăşire a
limitei memoriei utilizate să se stabilească codul erorii.
Codul programului:
a)#include<iostream>
class Group{
public:
~Group();//destructorul clasei
void citire( int , int , int );
void afisare();
void schimb_curator();
void schimb_nr_stud();
private:
};
cin >>curator;
};
void Group::afisare(){
};
void Group::schimb_curator(){
};
void Group::schimb_nr_stud(){
};
int main(void){
Group a1;
b)#include<iostream>
class matrix{
public:
matrix(){
n=0;m=0; arr=NULL;
};
matrix(int, int);
~matrix();
void afisare();
void adunare( matrix & , matrix &, int, int );
private:
int **arr;
int n,m;
};
};
matrix::~matrix(){//eliberarea memoriei
delete[] arr[i];
delete[] arr;
};
void matrix::citire(){
if(n == 0){
n=2; m =n+1;
for(int j=0;j<m;j++){
};
void matrix::afisare(){
for(int j=0;j<m;j++){
cout <<endl;
}
};
void matrix::adunare( matrix &a1, matrix &a2 , int num1, int num2){
for(int i = 0; i<n;i++){
for(int j=0;j<m;j++){
else
};
void matrix::scadere( matrix &a1, matrix &a2 , int num1, int num2){
for(int i = 0; i<n;i++){
for(int j=0;j<m;j++){
}
else
};
void matrix::inmultire( matrix &a1, matrix &a2 , int num1, int num2){
for(int i = 0; i<n;i++){
for(int j=0;j<m;j++){
else
};
for(int i = 0; i<n;i++){
for(int j=0;j<m;j++){
}
};
int main(void){
return 0;
}
Concluzie: