Sunteți pe pagina 1din 6

LUCRARE DE LABORATOR NR.

Tema: Moştenirea şi compoziţia


Scopul lucrării:
 studierea moştenirii, avantajele şi dezavantajele
 studierea compoziţiei
 studierea regulilor de definire a moştenirii şi compoziţiei
 studierea formelor de moştenire
 studierea iniţializatorilor
 principiul de substituţie
 moştenire şi compoziţie
Noţiuni de bază
Derivarea permite definirea într-un mod simplu, eficient şi flexibil a unor clase noi prin
adăugarea unor funcţionalităţi claselor deja existente, fără să fie necesară reprogramarea sau
recompilarea acestora. Clasele derivate exprimă relaţii ierarhice între conceptele pe care acestea
le reprezintă şi asigură o interfaţă comună pentru mai multe clase diferite.
Moştenirea poate fi abordată din două puncte de vedere: al elaboratorului şi al
utilizatorului clasei.
Din punctul de vedere al elaboratorului, moştenirea abordează comportarea şi proprietăţile
clasei derivate ca extensie a proprietăţilor clasei de bază. Din punct de vedere al utilizatorului –
moştenirea semnifică existenţa unui şir de clase parţial intershimbabile cu o interfaţă unică.
(Inginerii TI şi inginerii mecanici sunt ambii, în primul rînd, ingineri).

Avantajele moştenirii:
- micşorarea volumului de cod şi utilizarea lui repetată,
- micşorarea numărului de erori şi a preţului de cost,
- interfaţă unică şi substituire,
- mărirea vitezei de elaborare.
Un neajuns al moştenirii ar fi o oarecare micşorare a vitezei de executare a codului. Totuşi
eficienţa nu trebuie să contrazică avantajele, deoarece cheltuielile reale nu sunt esenţiale, ele
fiind evitate parţial prin utilizarea funcţiilor.

Definirea şi utilizarea moştenirii


O clasă care asigură proprietăţi comune mai multor clase se defineşte ca o clasă de bază. O
clasă derivată moşteneşte de la una sau mai multe clase de bază toate caracteristicile acestora,
cărora le adaugă alte caracteristici noi, specifice ei.
În general, derivarea unei clase se specifică în felul următor:
class nume_derivata : specificator_acces nume_baza {
// corpul clasei
};
Specificatorul de acces poate fi unul din cuvintele-cheie: public, private, protected.
De exemplu:

class Animal{
int NofLegs;
public:
void Say(){ cout<<”!!!”; }
};
class Dog: public Animal{ // moştenire
...
};
void main(){
Dog d;
d.Say();
}

1
Din exemplu se vede că, funcţia şi variabila definite în clasa Animal sunt importate şi pot fi
utilizate de obiectul clasei Dog. Clasa derivată poate să supradefinească comportarea definită în
clasa de bază. (Struţul şi pinguinul nu zboară, deşi sunt păsări, dar ornitoringul depune ouă, deşi
este mamifer).

Principiul de substituţie
Moştenirea mai presupune că, obiectul clasei derivate poate fi utilizat în locul obiectului
clasei de bază:
void main(){
Animal *ptr = new Dog;}
În exemplul dat se declară un pointer spre clasa de bază – deci se aşteaptă utilizarea
obiectului clasei de bază, însă, pointerului i se atribuie obiectul clasei derivate.

Formele moştenirii
În C++ există cinci forme diferite de moştenire. În lucrarea de faţă vor fi analizate trei
tipuri, numite moşteniri simple care au protecţia:
- public,
- private,
- protected,
Formele diferite de moştenire se utilizează pentru modificarea statutului de acces pentru
elementele membru ale clasei.
Când o clasă este derivată dintr-o clasă de bază, clasa derivată moşteneşte toţi membrii
clasei de bază (cu excepţia unora: constructori, destructor şi funcţia operator de asignare). Tipul
de acces din clasa derivată la membrii clasei de bază este dat de specificatorul de acces. Dacă nu
este indicat, specificatorul de acces este implicit private.
Când specificatorul de acces este public, toţi membrii de tip public ai clasei de bază devin
membri de tip public ai clasei derivate; toţi membrii protected ai clasei de bază devin membri
protected ai clasei derivate. Membrii private ai clasei de bază rămân private în clasa de bază şi
nu sunt accesibili membrilor clasei derivate. Această restricţie de acces ar putea pare
surprinzătoare, dar, dacă s-ar permite accesul dintr-o clasă derivată la membrii private ai clasei
de bază, noţiunile de încapsulare şi ascundere a datelor nu ar mai avea nici o semnificaţie.
La utilizarea moştenirii de tip private a clasei de bază, toate elementele accesibile ( public
şi protected) din clasa de bază devin private în clasa derivată. Iar la o moştenire de tip protected
– devin protected. Elementele cu acces private ale clasei de bază la orice formă de moştenire
sunt inaccesibile în clasa derivată. Înafară de aceasta, formele de moştenire se deosebesc prin
faptul că moştenirea de tip public crează un subtip de date, adică corespunde principiului de
substituţie, iar moştenirea de tip protected şi private – nu.

2
Compoziţia

Compoziţia reprezintă încă un mecanism legat de POO, care desemnează relaţia dintre
obiecte, pe cînd moştenirea este relaţia dintre clase.
Moştenirea realizează relaţia este "is a". Cîinele este mamifer, iar mamiferul – animal.
Compoziţia realizează relaţia conţine, are "has a". Automobilul conţine motor şi roţi.

Definirea compoziţiei
De fapt compoziţia se aplică foarte larg, deoarece şi variabilele predefinite au tip şi se
utilizează la definirea clasei. În cazul claselor utilizator, complexitatea constă în utilizarea
constructorilor, definirea propriu-zisă fiind simplă:

class Car{
Engine e;
};

Listele de iniţializare
Se ştie că variabilele clasei de bază protejate cu modificatorul private nu sunt accesibile,
prin urmare, ele nu pot fi iniţializate în constructorul clasei derivate, mai mult ca atît, aceasta
contrazice principiul de reutilizare a codului. Soluţia este una – apelul constructorului clasei de
bază. Acest lucru are loc dar numai pentru constructorii impliciţi şi de copiere, generaţi de
compilator. Restul constructorilor trebuie să se apeleze manual. Aceeaşi problemă apare şi în
cazul compoziţiei, de asemenea poate fi utilizat numai constructorul implicit şi de copiere.
Pentru soluţionarea acestor probleme sunt utilizate listele de iniţializare – care permit apelarea
oricărui tip de constructor şi efectuează orice iniţializare.

class Engine{
int power;
public:
Engine(int p){power=p;}
};
class Transport{
...
public:
Transport(char*);
};
class Car:public Transport{ // наследование
Engine e; // композиция
public:
Car():Transport(“automobile”),e(10){}
};

Pentru apelul constructorului clasei de bază, după parantezele constructorului clasei


derivate prin două puncte se scrie constructorul clasei de bază, fiind posibil transferul
parametrilor din constructorul clasei derivate în constructorul clasei de bază. În cazul
compoziţiei situaţia este asemănătoare dar se scrie numele variabilei şi nu a constructorului.

Ce alegem
Atît derivarea cît şi compoziţia reprezintă instrumente de reutilizarea a codului, apare o
întrebare evidentă: cînd se utilizează moştenirea şi cînd – compoziţia. În acest sens, există multe
recomandări diferite, însă cel mai simplu este să ne conducem de regula: se pune întrebarea:
clasa nouă este un subtip (Dog is an Animal), dacă răspunsul este afirmativ, se utilizează
moştenirea, în alt caz se pune întrebarea: clasa nouă reprezintă oare un container (Car has a
door) – în acest caz se utilizează compoziţia.

3
Există însă situaţii cînd nici această strategie nu este suficientă. De exemplu, clasa mulţime
poate fi creată în baza clasei listă, dar nu se ştie ce mecanism trebuie de folosit. Regulile în acest
caz sunt mai complicate, se pune un set de întrebări:
- vor putea fi înlocuite obiectele clasei existente prin obiectele clasei noi?
- este necesar să se supradefinească careva funcâie virtuală?
- prelucrează oare tipul nou aceleaşi mesaje ca şi cel vechi?
- este oare clasa de bază abstractă?
Dacă răspunsurile sunt afirmative, se utilizează moştenirea.

Întrebări de control:

1. Prin ce se deosebesc formele de moştenire?


2. Ce reprezintă compoziţia ?
3. Care sunt avantajele moştenirii?
4. Cum lucrează constructorii la moştenire?
5. Ce reprezintă principiul de substituţie?
6. În ce cazuri se utilizează moştenirea şi în care se utilizează compoziţia?
7. Cum pot fi iniţializate elementele containerului?

Sarcina

Varianta 1
а) Să se creeze o ierarhie a claselor joc – joc sportiv – volei. Determinaţi constructorii,
destructorul, operatorul de atribuire şi alte funcţii necesare.
b) Să se creeze clasa roata, care conţine rază. Determinaţi constructorii şi metodele de acces.
Creaţi clasa automobil, care conţine roţi şi un câmp care reprezintă firma producătoare. Creaţi o
clasă derivată autocamion care se deosebeşte prin tonaj. Determinaţi constructorii, destructorul şi
alte funcţii necesare.
Varianta 2
а) Să se creeze clasa student, care are un nume, specialitate, anul de învăţământ şi balul mediu.
Determinaţi funcţia de definire, schimbare a datelor şi de comparare. Pentru setarea câmpurilor
textuale să se folosească operatorul new. Determinaţi constructorii, destructorul şi alte funcţii
necesare. Creaţi clasa derivată student-diplomant, pentru care este definită tema de diplomă. De
asemenea, este necesar de definit toate funcţiile necesare.
b) Să se creeze clasa camera, care conţine suprafaţă. Determinaţi constructorii şi metodele de
acces. Creaţi clasa apartament cu o odaie, care conţine o odaie şi o bucătarie (suprafaţa ei),
etajul (camera este în clasa apartament cu o odaie). Determinaţi constructorii, metodele de acces.
Definiţi clasa derivată a apartamentelor cu o odaie cu adresă (un câmp adăugător - adresa).
Determinaţi constructorii, destructorul şi fluxul de ieşire.
Varianta 3
а) Să se creeze clasa mobilă, care conţine informaţie despre preţ, stil şi domeniul de utilizare
(oficiu, bucătărie şi altă mobilă). Pentru setarea câmpurilor textuale să se folosească memoria
dinamică. Definiţi clasele derivate masa şi scaun. Definiţi constructorii, destructorul, operatorii
de atribuire şi alte funcţii necesare.
b) Să se creeze clasa garaj, care conţine suprafaţa. Determinaţi constructorii şi metodele de
acces. Creaţi clasa casa, care conţine odăi, o bucătarie (suprafaţa ei) şi garaj. Definiţi clasa
derivată vilă (ca parametru adăugator – mărimea lotului de pamânt). Determinaţi constructorii,
destructorul şi fluxul de ieşire.

4
Varianta 4
а) Să se creeze o ierarhie a claselor om şi colaborator, care ocupă un post anumit şi primeşte un
salariu anumit. Să se supraîncarce operatorii pentru ieşiri şi intrări de obiecte, constructorul de
copiere, operatorii de atribuire utilizînd funcţiile respective ale clasei de bază.
b) Să se creeze clasa carte de joc, care conţine grad şi culoare. Cartea poate fi întoarsă şi
deschisă. Creaţi clasa – butuc de cărţi, care conţine cărţi de joc. Creaţi două clase derivate de la
butuc de cărţi, în una cărţile pot fi scoase numai într-o ordine, iar în alta – aleator.

Varianta 5
а) Să se creeze clasa lichid, care conţine denumirea (pointer spre char), densitatea. Definiţi
constructorii, destructorul, operatorii fluxului de intrare. Creaţi o clasă derivată – băuturi
alcoolice, care conţine tărie. Determinaţi funcţiile de redenumire a densităţii şi a tăriei.
b) Să se creeze clasa buton, care conţine un text anumit. Definiţi constructorii şi metodele de
acces. Creaţi clasa fereastra, care conţine un buton şi coordonatele ferestrei. Definiţi
constructorii şi destructorul. Definiţi clasa derivată fereastra cu buton şi cu un mesaj. Definiţi
constructorii, destructorul şi operatorii fluxului de ieşire.
Varianta 6
а) Să se creeze clasa om, care are numele (pointer spre char), vîrsta, greutatea. Determinaţi
constructorii, destructorul şi operatorul de atribuire. Creaţi clasa derivata - matur, care are
numărul paşaportului. Definiţi constructorii: impliciţi, cu parametri, destructorul, operatorii
fluxului de ieşire. Definiţi funcţiile de resetare a vîrstei şi a numărului paşaportului.
b) Definiţi clasa vaca care este compusă din următoarele câmpuri: numărul de identificare –
trebuie să fie garantat unic (pentru care se utilizează un contor static), cantitatea medie de lapte,
vîrsta, numele şi rasa. Pentru setarea câmpurilor textuale utilizaţi operatorul new. Definiţi clasa
cireadă, care constă dintr-un număr nelimitat de vaci. Definiţi metodele de introducere,
eliminare, de determinare a cantităţii medii de lapte în cireadă şi cantitatea totală de lapte în
cireadă şi alte funcţii necesare.
Varianta 7
а) Să se creeze o ierarhie a claselor clădire –clădire admnistrativă – clădire de locuit. Să se
supraîncarce fluxul de ieşire şi fluxul de intrare, să se definească constructorul de copiere,
operatorul de atribuire prin funcţiile corespunzătoare ale clasei de bază.
b) Să se creeze clasa student, care are nume, specialitate, anul de studiu şi balul mediu.
Determinaţi funcţia de definire, schimbare a datelor şi comparare. Pentru setarea câmpurilor
textuale se foloseşte operatorul new. Definiţi constructorii, destructorul şi alte funcţii necesare.
Creaţi clasa grupa, care conţine studenţi (un număr nelimitat). Definiţi metodele de adăugare şi
eliminare a studenţilor, de determinare a balului mediu pe grupă, constructorii, destructorul şi
alte funcţii necesare.
Varianta 8
а) Să se creeze ierarhia de clase bloc de studiu - clasa de bază abstractă şi instituţie preşcolară,
instituţie şcolară medie şi instituţie de învăţămînt superior – clase derivate. Să se supraîncarce
fluxul de ieşire şi fluxul de intrare, să se definească constructorul de copiere, operatorul de
atribuire prin funcţiile corespunzătoare ale clasei de bază.
b) Să se creeze clasa motor, care are o firmă producătoare, tip şi putere. Determinaţi funcţiile de
setare, de schimbare a parametrilor motoarelor. Creaţi o ierarhie a claselor: corabie – clasa de
bază şi vapor pentru pasageri – derivată. Corabia are un motor, capacitate de încărcare, măsurător

5
de apă, denumire, portul unde este înscris. Pentru setarea cîmpurilor textuale, utilizaţi operatorul
new.
Varianta 9
а) Să se creeze o ierarhie a claselor presă – ziar, revistă şi ziar electronic. Determinaţi
câmpurile: denumirea ziarului, tirajul, indexul de abonare, periodicitatea de publicare. Pentru
setarea cîmpurilor textuale, utilizaţi operatorul new. Definiţi fluxul de ieşire şi fluxul de intrare,
constructorul de copiere, operatorul de atribuire prin funcţia corespunzătoare a clasei de bază.
b) Să se creeze clasa Procesor, care conţine informaţia despre denumirea procesorului, frecvenţa
lui, tehnologiile de producere utilizate şi mărimea memoriei. Determinaţi clasa computer , care
este compusă dintr-un procesor şi alte componente. Pentru setarea cîmpurilor textuale, utilizaţi
operatorul new. Definiţi constructorii, funcţia fluxului de ieşire şi alte funcţii necesare.
Varianta 10
а) Să se creeze o ierarhie a claselor transport – transport aerian – elicopter. Definiţi fluxul de
ieşire şi fluxul de intrare, constructorul de copiere, operatorul de atribuire prin funcţia
corespunzătoare a clasei de bază.
b) Definiţi clasa element chimic, care conţine informaţia despre denumirea elementului şi
proprietăţile lui chimice. Determinaţi clasa medicamente, care conţine un număr diferit de
elemente chimice şi în cantităţi diferite. Determinaţi constructorii, funcţiile fluxului de ieşire şi
alte funcţii necesare.
Varianta 11
a) Să se creeze o ierarhie a claselor senzor - clasa de bază abstractă şi senzori de temperatură, de
umiditate şi de măsurare a vitezei vântului. Pentru fiecare clasă să se definească unităţile sale de
măsură şi metoda de citire a datelor despre starea mediului înconjurător. Să se supraîncarce
fluxul de ieşire şi fluxul de intrare, constructorul de copiere, operatorul de atribuire prin funcţiile
corespunzătoare ale clasei de bază.
b) Să se creeze clasa dispozitiv de colectare a informaţiei despre starea timpului care este
compusă din senzori (conform sarcinei a). Pentru citirea valorilor să se creeze clasa generatorul
de valori pentru fiecare senzor. Să se arate funcţionarea dispozitivului.
Varianta 12
a) Să se creeze o ierarhie a claselor Figură de şah - clasa abstractă, care conţine câmpul –
culoare. Creaţi pentru toate figurile clase derivate , care conţin denumirea figurii şi coordonatele
poziţiei pe tablă. Pentru setarea cîmpurilor textuale, utilizaţi operatorul new. Determinaţi fluxul
de ieşire şi fluxul de intrare, constructorul de copiere, operatorul de atribuire prin funcţiile
corespunzătoare ale clasei de bază.
b) Să se creeze clasa figuri de şah, care este compusă din setul de figuri din sarcina a, şi tabla de
şah – tablou bidimensional 8 pe 8. Să se creeze posibilitatea de a elimina figurile de pe tablă.
Definiţi constructorul care creează dinamic figuri şi le dă poziţii utilizînd notarea pentru şah
(E2). Definiţi constructorul de copiere şi operatorul de atribuire.

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

  • Programarea Avansata
    Programarea Avansata
    Document8 pagini
    Programarea Avansata
    iry_piry
    Încă nu există evaluări
  • Laborar 4 Programare
    Laborar 4 Programare
    Document13 pagini
    Laborar 4 Programare
    cristian
    Încă nu există evaluări
  • Lab1 Po
    Lab1 Po
    Document7 pagini
    Lab1 Po
    Alina Axenti
    Încă nu există evaluări
  • Lucrarea de Laborator NR 4 POO
    Lucrarea de Laborator NR 4 POO
    Document10 pagini
    Lucrarea de Laborator NR 4 POO
    Alexandru Burdeniuc
    Încă nu există evaluări
  • POO#Lab#5
    POO#Lab#5
    Document3 pagini
    POO#Lab#5
    Damian Musteata
    Încă nu există evaluări
  • Raspunsuri AC
    Raspunsuri AC
    Document10 pagini
    Raspunsuri AC
    Anastasia Gherman
    Încă nu există evaluări
  • Lab 4
    Lab 4
    Document5 pagini
    Lab 4
    cristian
    Încă nu există evaluări
  • Lab 1
    Lab 1
    Document10 pagini
    Lab 1
    rosca9doinita
    Încă nu există evaluări
  • Lab.4 FC
    Lab.4 FC
    Document6 pagini
    Lab.4 FC
    Cristina Florea
    Încă nu există evaluări
  • Raport 4 Si 5 SDA
    Raport 4 Si 5 SDA
    Document14 pagini
    Raport 4 Si 5 SDA
    Вадим Платон
    Încă nu există evaluări
  • Lucrare de Laborator nr.2.
    Lucrare de Laborator nr.2.
    Document8 pagini
    Lucrare de Laborator nr.2.
    ionperu
    100% (2)
  • Laborator 3
    Laborator 3
    Document17 pagini
    Laborator 3
    DorelDjj
    Încă nu există evaluări
  • Laborator 1 C
    Laborator 1 C
    Document17 pagini
    Laborator 1 C
    Dorin Graur
    Încă nu există evaluări
  • Lab 6 Poo
    Lab 6 Poo
    Document5 pagini
    Lab 6 Poo
    Alex Tronciu
    Încă nu există evaluări
  • Laborator nr.3 POO
    Laborator nr.3 POO
    Document6 pagini
    Laborator nr.3 POO
    MARYAN Pătru
    Încă nu există evaluări
  • SDAlab 6
    SDAlab 6
    Document1 pagină
    SDAlab 6
    Витёк Мужичёк
    Încă nu există evaluări
  • Laborator Porgramarea Calculatoarelor 3
    Laborator Porgramarea Calculatoarelor 3
    Document3 pagini
    Laborator Porgramarea Calculatoarelor 3
    Sergiu Lungu
    Încă nu există evaluări
  • C++2012 Lab6
    C++2012 Lab6
    Document10 pagini
    C++2012 Lab6
    Elena Bujor
    Încă nu există evaluări
  • Raport 2 Si Raport 3 La SDA
    Raport 2 Si Raport 3 La SDA
    Document17 pagini
    Raport 2 Si Raport 3 La SDA
    maxlab
    Încă nu există evaluări
  • Lab 6 Cazacu POO
    Lab 6 Cazacu POO
    Document5 pagini
    Lab 6 Cazacu POO
    Iura Cazacu
    Încă nu există evaluări
  • Lab 3 Rom
    Lab 3 Rom
    Document6 pagini
    Lab 3 Rom
    Jorca Ţuţuianu
    Încă nu există evaluări
  • Lab 6
    Lab 6
    Document4 pagini
    Lab 6
    Егор Казаков
    Încă nu există evaluări
  • ASAD Lab03 Raport
    ASAD Lab03 Raport
    Document6 pagini
    ASAD Lab03 Raport
    Mihai U
    Încă nu există evaluări
  • Laboratorul 7 PC
    Laboratorul 7 PC
    Document36 pagini
    Laboratorul 7 PC
    Petrea Trofim
    Încă nu există evaluări
  • Raport 3
    Raport 3
    Document11 pagini
    Raport 3
    Damean Alexandra
    100% (1)
  • Laborar 5 Programare
    Laborar 5 Programare
    Document8 pagini
    Laborar 5 Programare
    cristian
    Încă nu există evaluări
  • PC Raport 6 7.odt
    PC Raport 6 7.odt
    Document16 pagini
    PC Raport 6 7.odt
    Trifan Petru
    Încă nu există evaluări
  • Lab BTD 1
    Lab BTD 1
    Document7 pagini
    Lab BTD 1
    ion
    Încă nu există evaluări
  • AI-191 Medinschi Ion SO4
    AI-191 Medinschi Ion SO4
    Document5 pagini
    AI-191 Medinschi Ion SO4
    Carolin
    Încă nu există evaluări
  • TAP Lab4
    TAP Lab4
    Document10 pagini
    TAP Lab4
    Cristian Batir
    Încă nu există evaluări
  • Evaluarea 1 TSSS, Varianta 2
    Evaluarea 1 TSSS, Varianta 2
    Document2 pagini
    Evaluarea 1 TSSS, Varianta 2
    Alex Tronciu
    Încă nu există evaluări
  • Asdn Lab 1 Rotari Viorel
    Asdn Lab 1 Rotari Viorel
    Document7 pagini
    Asdn Lab 1 Rotari Viorel
    ViorelRotari
    Încă nu există evaluări
  • POO1-varianta 3
    POO1-varianta 3
    Document5 pagini
    POO1-varianta 3
    Octavian Lucaș
    Încă nu există evaluări
  • Lucrare de Laborator Nr.4
    Lucrare de Laborator Nr.4
    Document10 pagini
    Lucrare de Laborator Nr.4
    SpecialOps
    Încă nu există evaluări
  • Laborator 1 POO PDF
    Laborator 1 POO PDF
    Document6 pagini
    Laborator 1 POO PDF
    kanamechan27
    Încă nu există evaluări
  • Raport Programarea Calculatoarelor 5
    Raport Programarea Calculatoarelor 5
    Document14 pagini
    Raport Programarea Calculatoarelor 5
    Oprea Cristian
    Încă nu există evaluări
  • Lab7 POO
    Lab7 POO
    Document10 pagini
    Lab7 POO
    Grosu Elena
    Încă nu există evaluări
  • Laborator 2 Sav
    Laborator 2 Sav
    Document7 pagini
    Laborator 2 Sav
    Viorel Sorocean
    Încă nu există evaluări
  • Proiect de Curs BD Exemplu-Unlocked
    Proiect de Curs BD Exemplu-Unlocked
    Document60 pagini
    Proiect de Curs BD Exemplu-Unlocked
    Amarfii Sergiu
    Încă nu există evaluări
  • Somipp Linux 3 UTM
    Somipp Linux 3 UTM
    Document7 pagini
    Somipp Linux 3 UTM
    Cristi Poselețchi
    Încă nu există evaluări
  • PCAD
    PCAD
    Document4 pagini
    PCAD
    Fiodor Ciumac
    Încă nu există evaluări
  • Laborator nr6 CDE
    Laborator nr6 CDE
    Document5 pagini
    Laborator nr6 CDE
    Vlad Racu
    Încă nu există evaluări
  • Lab 1
    Lab 1
    Document10 pagini
    Lab 1
    Ion Cornea
    Încă nu există evaluări
  • Asdn2 Lab5
    Asdn2 Lab5
    Document4 pagini
    Asdn2 Lab5
    Жан Ганган
    Încă nu există evaluări
  • Laborator 1
    Laborator 1
    Document4 pagini
    Laborator 1
    Maria Tugulschi
    Încă nu există evaluări
  • Laboratorul 5
    Laboratorul 5
    Document7 pagini
    Laboratorul 5
    ion
    Încă nu există evaluări
  • Laborator 1
    Laborator 1
    Document6 pagini
    Laborator 1
    adrian_cobilas
    Încă nu există evaluări
  • Lab1 Apa
    Lab1 Apa
    Document15 pagini
    Lab1 Apa
    SlavicCaldare
    Încă nu există evaluări
  • Comparatoare Numerice
     Comparatoare Numerice
    Document23 pagini
    Comparatoare Numerice
    Zisu Corneliu
    Încă nu există evaluări
  • Grafica Pe Calculator Lab 1 Java
    Grafica Pe Calculator Lab 1 Java
    Document4 pagini
    Grafica Pe Calculator Lab 1 Java
    Calc 182
    Încă nu există evaluări
  • Lab 3
    Lab 3
    Document4 pagini
    Lab 3
    Клара Кожухари
    Încă nu există evaluări
  • POO Lab7
    POO Lab7
    Document6 pagini
    POO Lab7
    Dani Ela
    Încă nu există evaluări
  • Lab 2 POO
    Lab 2 POO
    Document7 pagini
    Lab 2 POO
    megadanyx
    Încă nu există evaluări
  • Lab 3 LFA
    Lab 3 LFA
    Document3 pagini
    Lab 3 LFA
    Fil Gorea
    Încă nu există evaluări
  • Lab 4 Rom
    Lab 4 Rom
    Document4 pagini
    Lab 4 Rom
    trfetr4frfrf
    Încă nu există evaluări
  • Programare C++ Laborator 4 Indrumar UTM
    Programare C++ Laborator 4 Indrumar UTM
    Document7 pagini
    Programare C++ Laborator 4 Indrumar UTM
    UrsuOctavian
    Încă nu există evaluări
  • Pentru Examen
    Pentru Examen
    Document11 pagini
    Pentru Examen
    ramsesaha
    Încă nu există evaluări
  • Poo C#
    Poo C#
    Document13 pagini
    Poo C#
    cosminadumitrita
    Încă nu există evaluări
  • C# Interview Prep
    C# Interview Prep
    Document14 pagini
    C# Interview Prep
    Maria Runceanu
    Încă nu există evaluări
  • Preparation-For-Interview C#
    Preparation-For-Interview C#
    Document14 pagini
    Preparation-For-Interview C#
    Maria Runceanu
    Încă nu există evaluări
  • Teza Capitol1
    Teza Capitol1
    Document39 pagini
    Teza Capitol1
    Cristina Cristina
    Încă nu există evaluări
  • 1
    1
    Document25 pagini
    1
    o m
    Încă nu există evaluări
  • Без названия
    Без названия
    Document10 pagini
    Без названия
    o m
    Încă nu există evaluări
  • Curs 2
    Curs 2
    Document9 pagini
    Curs 2
    Simion Emilian
    Încă nu există evaluări
  • Без названия
    Без названия
    Document10 pagini
    Без названия
    o m
    Încă nu există evaluări
  • III AMG 3a Geriatrie
    III AMG 3a Geriatrie
    Document77 pagini
    III AMG 3a Geriatrie
    Măndița Baias
    Încă nu există evaluări
  • Matematica/ Probabilitati Si Statistica
    Matematica/ Probabilitati Si Statistica
    Document302 pagini
    Matematica/ Probabilitati Si Statistica
    Pahomie Adrian
    86% (7)
  • L
    L
    Document2 pagini
    L
    o m
    Încă nu există evaluări
  • Lab 2 Poo
    Lab 2 Poo
    Document15 pagini
    Lab 2 Poo
    o m
    Încă nu există evaluări
  • Metode Si Modele de Calcul
    Metode Si Modele de Calcul
    Document10 pagini
    Metode Si Modele de Calcul
    o m
    Încă nu există evaluări
  • Metode Si Modele de Calcul
    Metode Si Modele de Calcul
    Document10 pagini
    Metode Si Modele de Calcul
    o m
    Încă nu există evaluări
  • Lab 7 Rom
    Lab 7 Rom
    Document5 pagini
    Lab 7 Rom
    Влад Морозан
    Încă nu există evaluări
  • Lab 3 Rom
    Lab 3 Rom
    Document6 pagini
    Lab 3 Rom
    Jorca Ţuţuianu
    Încă nu există evaluări
  • 6th Central Pay Commission Salary Calculator
    6th Central Pay Commission Salary Calculator
    Document15 pagini
    6th Central Pay Commission Salary Calculator
    rakhonde
    100% (436)
  • Lab5Rom. Moştenirea Multiplă
    Lab5Rom. Moştenirea Multiplă
    Document4 pagini
    Lab5Rom. Moştenirea Multiplă
    False King
    Încă nu există evaluări
  • Lab 7 Rom
    Lab 7 Rom
    Document5 pagini
    Lab 7 Rom
    Влад Морозан
    Încă nu există evaluări
  • Raport C++ Lab 2
    Raport C++ Lab 2
    Document5 pagini
    Raport C++ Lab 2
    Nickolae Enachi
    Încă nu există evaluări
  • Lucrare Practica Metoda Bisectiei Si Coardelor
    Lucrare Practica Metoda Bisectiei Si Coardelor
    Document7 pagini
    Lucrare Practica Metoda Bisectiei Si Coardelor
    Ghetus
    Încă nu există evaluări
  • Caiet de Sarcini (BD)
    Caiet de Sarcini (BD)
    Document4 pagini
    Caiet de Sarcini (BD)
    MihaiUngureanu
    Încă nu există evaluări
  • Lab 4 Rom
    Lab 4 Rom
    Document6 pagini
    Lab 4 Rom
    o m
    Încă nu există evaluări
  • Stiva
    Stiva
    Document1 pagină
    Stiva
    o m
    Încă nu există evaluări
  • Lab 1 Rom
    Lab 1 Rom
    Document6 pagini
    Lab 1 Rom
    mihaicostraci3
    Încă nu există evaluări
  • Sarcini Lab 1-4
    Sarcini Lab 1-4
    Document4 pagini
    Sarcini Lab 1-4
    o m
    Încă nu există evaluări
  • SDA Lab 1
    SDA Lab 1
    Document16 pagini
    SDA Lab 1
    Ciobanu Alina
    Încă nu există evaluări
  • DF
    DF
    Document1 pagină
    DF
    o m
    Încă nu există evaluări
  • Engleza
    Engleza
    Document1 pagină
    Engleza
    o m
    Încă nu există evaluări
  • Eminescu
    Eminescu
    Document2 pagini
    Eminescu
    o m
    Încă nu există evaluări
  • Laboratorrrrrrrrrrr 4,5
    Laboratorrrrrrrrrrr 4,5
    Document4 pagini
    Laboratorrrrrrrrrrr 4,5
    o m
    Încă nu există evaluări
  • СПИСОК
    СПИСОК
    Document4 pagini
    СПИСОК
    o m
    Încă nu există evaluări