Tehnici de proiectare şi programare orientată pe obiecte
Transcript of Tehnici de proiectare şi programare orientată pe obiecte
![Page 1: Tehnici de proiectare şi programare orientată pe obiecte](https://reader031.fdocuments.es/reader031/viewer/2022012418/6173645e1345d3539e45da8c/html5/thumbnails/1.jpg)
Tehnici de proiectare şi programare orientată pe obiecte
R=?
False
False
![Page 2: Tehnici de proiectare şi programare orientată pe obiecte](https://reader031.fdocuments.es/reader031/viewer/2022012418/6173645e1345d3539e45da8c/html5/thumbnails/2.jpg)
Întrebarea nr. 11
Care dintre urmatoarele afirmatii e adevarata?Answer
Selected Answer: a. Diagramele de obiecte sunt cel mai important tip de diagrame UML
b. Diagramele de activitate pot fi folosite pentru a arata intregul flux al unui caz de utilizare
R=?
![Page 3: Tehnici de proiectare şi programare orientată pe obiecte](https://reader031.fdocuments.es/reader031/viewer/2022012418/6173645e1345d3539e45da8c/html5/thumbnails/3.jpg)
Întrebarea nr. 14
0 din 6 puncte
Identificati care dintre elementele de modelare UML urmatoare NU este asociat cu diagramele cazurilor de utilizare (Use-case Diagrams)?Answer
Selected Answer: b. Extend relationships (relatii de tip Extend)
R=?
Întrebarea nr. 8
0 din 6 puncte
Care dintre urmatoarele elemente de modelare NU este asociat cu diagramele de activitate (Activity Diagrams) in UML?Answer
Selected Answer: a. fork nodes si join nodes (noduri de bifurcare si noduri de imbinare)
R=?
• Întrebarea nr. 11 6 din 6 puncte
Diagramele de interactiune (in UML) includ:
d. Diagramele de colaborare si diagramele de secventa
![Page 4: Tehnici de proiectare şi programare orientată pe obiecte](https://reader031.fdocuments.es/reader031/viewer/2022012418/6173645e1345d3539e45da8c/html5/thumbnails/4.jpg)
Întrebarea nr. 9 Care din urmatoarele afirmatii este falsa
b. Orice arbore binar are un numar impar de noduri.
Întrebarea nr. 5
0 din 6 puncte
Analizati cu atentie urmatorul fragment de cod sursa. Alegeti observatia corecta ?
class Sir{ int len; char *p;public: Sir(char * s=NULL) { p = NULL; len =0;
if(s) { len = strlen(s); p = new char[len+1]; strcpy_s(p,len+1, s); } } ~Sir(){ if (p) delete p; } };
int main(int argc, char* argv[]){
while(true) { Sir * ps = new Sir("Programare in C++"); delete ps; } return 0;}Answer
Selected Answer: e. codul este sintactic corect , se compileaza dar nu se executa
b. codul este corect, se compileaza dar nu se executa
![Page 5: Tehnici de proiectare şi programare orientată pe obiecte](https://reader031.fdocuments.es/reader031/viewer/2022012418/6173645e1345d3539e45da8c/html5/thumbnails/5.jpg)
x. 16R=?
R=????
Întrebare nr. 27
![Page 6: Tehnici de proiectare şi programare orientată pe obiecte](https://reader031.fdocuments.es/reader031/viewer/2022012418/6173645e1345d3539e45da8c/html5/thumbnails/6.jpg)
R= B::B() ; D::D() ; D::~D() ; B::B().
![Page 7: Tehnici de proiectare şi programare orientată pe obiecte](https://reader031.fdocuments.es/reader031/viewer/2022012418/6173645e1345d3539e45da8c/html5/thumbnails/7.jpg)
a. 0 b. ParError
![Page 8: Tehnici de proiectare şi programare orientată pe obiecte](https://reader031.fdocuments.es/reader031/viewer/2022012418/6173645e1345d3539e45da8c/html5/thumbnails/8.jpg)
R=?
![Page 9: Tehnici de proiectare şi programare orientată pe obiecte](https://reader031.fdocuments.es/reader031/viewer/2022012418/6173645e1345d3539e45da8c/html5/thumbnails/9.jpg)
R=?
0
![Page 10: Tehnici de proiectare şi programare orientată pe obiecte](https://reader031.fdocuments.es/reader031/viewer/2022012418/6173645e1345d3539e45da8c/html5/thumbnails/10.jpg)
R=?
R=?
![Page 11: Tehnici de proiectare şi programare orientată pe obiecte](https://reader031.fdocuments.es/reader031/viewer/2022012418/6173645e1345d3539e45da8c/html5/thumbnails/11.jpg)
![Page 12: Tehnici de proiectare şi programare orientată pe obiecte](https://reader031.fdocuments.es/reader031/viewer/2022012418/6173645e1345d3539e45da8c/html5/thumbnails/12.jpg)
R= C nu sunt sigur
R=?
![Page 13: Tehnici de proiectare şi programare orientată pe obiecte](https://reader031.fdocuments.es/reader031/viewer/2022012418/6173645e1345d3539e45da8c/html5/thumbnails/13.jpg)
Întrebarea nr. 6
6 din 6 puncte
Analizati cu atentie urmatorul fragment de cod sursa. Se doreste introducerea in definitia sablonului de clasa Vector a unui operator de extractie care sa permita o extractie inlantuita, precizati care este declaratia corecta ?
template<typename T=int, int dim=100>class Vector{ T v[dim];public: Vector(){ memset(v,0,sizeof(v)); } ~Vector(){} T &operator[](int i){ return v[i];} //alegeti declaratia operatorului de insertie in flux };Answer
Selected Answer: b. template<typename T, int dim>friend istream & operator>>(istream &, Vector<T,dim>&);
R=?
![Page 14: Tehnici de proiectare şi programare orientată pe obiecte](https://reader031.fdocuments.es/reader031/viewer/2022012418/6173645e1345d3539e45da8c/html5/thumbnails/14.jpg)
c. Programare in C++, codul este corect dar incomplet, se compileaza dar pentru a functiona corect necesit a un constructor de copiere
R=?
![Page 15: Tehnici de proiectare şi programare orientată pe obiecte](https://reader031.fdocuments.es/reader031/viewer/2022012418/6173645e1345d3539e45da8c/html5/thumbnails/15.jpg)
Selected Answer: x c.
B::B() B::B(B&) B::B(B&)
R=?
![Page 16: Tehnici de proiectare şi programare orientată pe obiecte](https://reader031.fdocuments.es/reader031/viewer/2022012418/6173645e1345d3539e45da8c/html5/thumbnails/16.jpg)
1234
R=?
• Întrebarea nr. 5
Analizati cu atentie urmatorul fragment de cod sursa. Precizati care este ordinea de apel a constructorilor. Ce se va afisa pe ecran?class Clasa1{public: Clasa1(){ cout<<"C1::C1()"<<endl;} };class Clasa2{public: Clasa2() { cout<<"C2::C2()"<<endl;} };class System{ Clasa2 ob1; Clasa1 ob2;public: System():ob2(), ob1() { cout<<"S::S()"<<endl;} };int main (int argc, char* argv[]){ System a; return 0;}
![Page 17: Tehnici de proiectare şi programare orientată pe obiecte](https://reader031.fdocuments.es/reader031/viewer/2022012418/6173645e1345d3539e45da8c/html5/thumbnails/17.jpg)
Answer
Selected Answer: b. C1::C1() C2::C2() S::S()
R=?
• Întrebarea nr. 6
6 din 6 puncte
Analizati cu atentie urmatorul fragment de cod sursa. Precizati ce catitate de memorie se aloca pentru clasele care urmeaza? Ce se va afisa pe ecran?
class Empty
{ int null;public: Empty(){} ~Empty(){}};
class EmptyToo : public Empty {public: EmptyToo(){} virtual ~EmptyToo(){}};
class EmptyThree : public EmptyToo {public: EmptyThree(){} ~EmptyThree(){}};
int main(){ std::cout << sizeof(EmptyThree);
![Page 18: Tehnici de proiectare şi programare orientată pe obiecte](https://reader031.fdocuments.es/reader031/viewer/2022012418/6173645e1345d3539e45da8c/html5/thumbnails/18.jpg)
return 0;}Answer
Selected Answer: 8
Selected Answer: X 16
![Page 19: Tehnici de proiectare şi programare orientată pe obiecte](https://reader031.fdocuments.es/reader031/viewer/2022012418/6173645e1345d3539e45da8c/html5/thumbnails/19.jpg)
Baze de date
GRESIT X c. SELECT depozit, categorie culoare SUM (pret_unitar*stoc_curent) FROM produs GROUP BY ROLLUP (depozit, categorie), (depozit, categorie));
GRESIT x b. SELECT functia, count(*) FROM angajati WHERE MIN (salariu)>4000 AND MAX (salariu)<20000 GROUP BY functie;
• Întrebarea nr. 90 din 6 puncte
Se da urmatorul tabel: ANGAJATI(id_ang#, nume, data_ang, data_nast, salariu, comision, functia).Stiind ca exista salariati cu functia ‘Programator IT’, care dintre variantele de mai jos afiseaza numele, functia, salariu pentru acei angajati care au salariul mai mare decat al oricarui ’Programator IT’?Answer
Selected Answer: a. SELECT nume, functia, salariuFROM angajatiWHEE salariu > ANY(SELECT salariu FROM angajati WHERE functia=’Programator IT’);
R=?
• Întrebarea nr. 100 din 6 puncte
Sa da urmatorul tabel: ANGAJATI(id_ang#, nume, data_ang, data_nast, salariu, comision, functia, id_sef). Alegeti comanda care obtine ordonat crescator dupa cod numele fiecarui angajat impreuna cu numele sefului sau, incluzand in rezultat si angajatii care nu au sef.Answer
Selected Answer: b. SELECT a.nume angajat, b.nume sefFROM angajati a, angajati bWHERE a.id_sef(+)=b.id_angORDER BY a.id_ang;
R=?
Întrebarea nr. 16
![Page 20: Tehnici de proiectare şi programare orientată pe obiecte](https://reader031.fdocuments.es/reader031/viewer/2022012418/6173645e1345d3539e45da8c/html5/thumbnails/20.jpg)
Se da urmatorul tabel: ANGAJATI(id_ang#, nume, data_ang, data_nast, salariu, comision, functia, id_sef).Presupunand ca nu exista doi angajati cu acelasi nume, care dintre variante nu afiseaza angajatii care nu sunt sefi?Answer
Selected Answer: a. SELECT numeFROM angajatiWHERE nume NOT IN (SELECT b.nume FROM angajati a, angajati b WHERE a.id_sef=b.id_ang);
R=?
![Page 21: Tehnici de proiectare şi programare orientată pe obiecte](https://reader031.fdocuments.es/reader031/viewer/2022012418/6173645e1345d3539e45da8c/html5/thumbnails/21.jpg)
![Page 22: Tehnici de proiectare şi programare orientată pe obiecte](https://reader031.fdocuments.es/reader031/viewer/2022012418/6173645e1345d3539e45da8c/html5/thumbnails/22.jpg)
![Page 23: Tehnici de proiectare şi programare orientată pe obiecte](https://reader031.fdocuments.es/reader031/viewer/2022012418/6173645e1345d3539e45da8c/html5/thumbnails/23.jpg)
GRESIT b. SELECT denumire FROM produs WHERE stoc_initial IN (SELECT SUM(cantitate) FROM vind GROUP BY id_produs);
GRESIT X c. SELECT nume, id_produs, denumire FROM vanzator, vinde, produs WHERE vinde.id_vanzator=vanzator.id_vanzator AND vinde.id_produs=produs.id_produs;Intrebarea 5.Se dau urmatoarele trei tabele: VANZATOR(id_vanzator#, nume, prenume, data_angajarii) VINDE(id_vanzator#,id_produs#, data#, cantitate) PRODUS(id_produs#, denumire, culoare, stoc_initial, pret_unitar)Alegeti comanda care obtine denumirea produselor care au stocul epuizat.
GRESIT a. SELECT denumire FROM produs WHERE stoc_initial IN (SELECT SUM(cantitate) FROM vind GROUP BY id_produs);
R=?
![Page 24: Tehnici de proiectare şi programare orientată pe obiecte](https://reader031.fdocuments.es/reader031/viewer/2022012418/6173645e1345d3539e45da8c/html5/thumbnails/24.jpg)
Întrebarea nr. 5
0 din 6 puncte
Pe tabelul de mai jos MELODII(id_melodie#, titlu, textier, compozitor, gen, durata),este definita urmatoarea vizualizare:CREATE VIEW melodii_clasice AS SELECT id_melodie, titlu, textier, compozitor, durataFROM melodiiWHERE gen = ‘clasic’WITH READ ONLY;Care dintre urmatoarele comenzi este permisa asupra vizualizarii definite?Answer
Selected Answer: b. INSERT INTO melodii_clasice(id_melodie, titlu, compozitor)VALUES (101, ‘Dunarea Albastra’, ‘Johann Strauss’);
R=?
![Page 25: Tehnici de proiectare şi programare orientată pe obiecte](https://reader031.fdocuments.es/reader031/viewer/2022012418/6173645e1345d3539e45da8c/html5/thumbnails/25.jpg)
GRESIT x c. SELECT denumire FROM album WHERE numar_exemplare>1000 UNION SELECT denumire FROM album a, inclusa i WHERE a.id_album=i.id_album GROUP BY denumire HAVING COUNT(*)>=10;
• Întrebarea nr. 16
6 din 6 puncte
Se da urmatorul tabel, care contine date despre locuintele ce pot fi inchiriate, aflate in baza de date a unei firme imobiliare:LOCUINTE(id_locuinta#, nr_camere, suprafata, tip, pret, etaj, an). Care varianta afiseaza pentru fiecare etaj pretul mediul al locuintelor care au mai mult de o camera si pentru care pretul mediu obtinut este cel mult 800?Answer
Selected Answer: c. SELECT etaj, ROUND(AVG(pret),2)FROM locuinteWHERE nr_camere > 1GROUP BY etajHAVING ROUND(AVG(pret),2) < 800;
![Page 26: Tehnici de proiectare şi programare orientată pe obiecte](https://reader031.fdocuments.es/reader031/viewer/2022012418/6173645e1345d3539e45da8c/html5/thumbnails/26.jpg)
R=?
Întrebarea nr. 7
Se dau urmatoarele doua tabele:CLIENTI(id_client#, nume, prenume, id_adresa)ADRESE(id_adresa#, strada, numar, bloc, apartament, judet, localitate, tara)Alegeti comanda care nu obtine numele, prenumele si adresa pentru fiecare client.
Corect b. SELECT nume, prenume, strada, numar, bloc, apartament, judet, localitate, tara FROM clienti NATURAL JOIN adrese ON(id_adresa);
Gresit X c. SELECT nume, prenume, strada, numar, bloc, apartament, judet, localitate, tara FROM clienti c JOIN adrese a USING (id_adresa)
• Întrebarea nr. 13
Se dau urmatoarele doua tabele:CLIENTI(id_client#, nume, prenume, id_adresa, id_ang)AGENTI_IMOBILIARI(id_ang#, nume, salariu, comision)Se cere sa se obtina pentru fiecare client numele si prenumele sau, respectiv codul si numele agentului corespunzator, incluzand in rezultat toti agentii, chiar daca acestia nu au asociat niciun client. Care varianta nu realizeaza acest lucru?
Corect b. SELECT c.nume client, a.id_ang, a.nume agent FROM clienti c LEFT OUTER JOIN agenti_imobiliari a ON(c.id_ang = a.id_ang);
Gresit X c. SELECT c.nume client, a.id_ang, a.nume agent FROM clienti c, agenti_imobiliari a WHERE c.id_ang (+) = a.id_ang;
![Page 27: Tehnici de proiectare şi programare orientată pe obiecte](https://reader031.fdocuments.es/reader031/viewer/2022012418/6173645e1345d3539e45da8c/html5/thumbnails/27.jpg)
GRESIT X d. numarul de autori de nationalitate Romana din tabelul "autor"
![Page 28: Tehnici de proiectare şi programare orientată pe obiecte](https://reader031.fdocuments.es/reader031/viewer/2022012418/6173645e1345d3539e45da8c/html5/thumbnails/28.jpg)
GRESIT X d. valoarea totala a fiecarui facturi emise la data egala cu data curenta Gresit X c. valoarea totala a tuturor facturilor emise la o data egala cu data sistemului
Raspuns corect "c"
Întrebarea nr. 4
6 din 6 puncte
O constangere de validareAnswer
Selected Answer: b. defineste explicit o conditie ce trebuie satisfacuta de fiecare linie a tabelului.
![Page 29: Tehnici de proiectare şi programare orientată pe obiecte](https://reader031.fdocuments.es/reader031/viewer/2022012418/6173645e1345d3539e45da8c/html5/thumbnails/29.jpg)
R=?
c. Constrangerea de cheie externa implementeaza o relatie de tip one-to-many intre doua tabele.
R=?
Întrebarea nr. 14
O subcerere care intoarce cel putin doua linii nu poate fi utilizata intr-o comanda SELECT in clauza:
Selected Answer: d. FROM
R=?
R=?
![Page 30: Tehnici de proiectare şi programare orientată pe obiecte](https://reader031.fdocuments.es/reader031/viewer/2022012418/6173645e1345d3539e45da8c/html5/thumbnails/30.jpg)
Algoritmi si structuri de date
![Page 31: Tehnici de proiectare şi programare orientată pe obiecte](https://reader031.fdocuments.es/reader031/viewer/2022012418/6173645e1345d3539e45da8c/html5/thumbnails/31.jpg)
c. 8R=?
GRESIT b. se memoreaza radacinile celor doi arbori rezultati
R=?
![Page 32: Tehnici de proiectare şi programare orientată pe obiecte](https://reader031.fdocuments.es/reader031/viewer/2022012418/6173645e1345d3539e45da8c/html5/thumbnails/32.jpg)
Gresit
![Page 33: Tehnici de proiectare şi programare orientată pe obiecte](https://reader031.fdocuments.es/reader031/viewer/2022012418/6173645e1345d3539e45da8c/html5/thumbnails/33.jpg)
Gresit x a. 1
R=?
![Page 34: Tehnici de proiectare şi programare orientată pe obiecte](https://reader031.fdocuments.es/reader031/viewer/2022012418/6173645e1345d3539e45da8c/html5/thumbnails/34.jpg)
Gresit
![Page 35: Tehnici de proiectare şi programare orientată pe obiecte](https://reader031.fdocuments.es/reader031/viewer/2022012418/6173645e1345d3539e45da8c/html5/thumbnails/35.jpg)
![Page 36: Tehnici de proiectare şi programare orientată pe obiecte](https://reader031.fdocuments.es/reader031/viewer/2022012418/6173645e1345d3539e45da8c/html5/thumbnails/36.jpg)
Analiza numerica
Se rezolva ecuatia = pe intervalul [0,1] cu metoda aproximatiilor succesive corespunzatoare functiei . Alegem
predictie initiala . Cat este urmatoarea iteratie conform metodei aproximatiilor succesive?Answer
Selected Answer: b. 1/4
![Page 37: Tehnici de proiectare şi programare orientată pe obiecte](https://reader031.fdocuments.es/reader031/viewer/2022012418/6173645e1345d3539e45da8c/html5/thumbnails/37.jpg)
R=1
Raspuns corect c. 2
Raspuns corect c. 1
Raspuns corect a. 1
Se aplica metoda radacinii patrate matricii A= pentru calculul descompunerii Cholesky A=BB , unde B este inferior triunghiulara(toate elementele deasupra diagonalei principale sunt nule). Sa se afle elementul de pe a doua linie si a doua coloana din matricea B.Answer
Selected Answer: a. 2
R=?
![Page 38: Tehnici de proiectare şi programare orientată pe obiecte](https://reader031.fdocuments.es/reader031/viewer/2022012418/6173645e1345d3539e45da8c/html5/thumbnails/38.jpg)
R x=1,y=1
Problema nr.1
![Page 39: Tehnici de proiectare şi programare orientată pe obiecte](https://reader031.fdocuments.es/reader031/viewer/2022012418/6173645e1345d3539e45da8c/html5/thumbnails/39.jpg)
![Page 40: Tehnici de proiectare şi programare orientată pe obiecte](https://reader031.fdocuments.es/reader031/viewer/2022012418/6173645e1345d3539e45da8c/html5/thumbnails/40.jpg)
R=x=1,y=1
![Page 41: Tehnici de proiectare şi programare orientată pe obiecte](https://reader031.fdocuments.es/reader031/viewer/2022012418/6173645e1345d3539e45da8c/html5/thumbnails/41.jpg)
R=2
R=3
R=4
![Page 42: Tehnici de proiectare şi programare orientată pe obiecte](https://reader031.fdocuments.es/reader031/viewer/2022012418/6173645e1345d3539e45da8c/html5/thumbnails/42.jpg)
R=0
R=1/6
![Page 43: Tehnici de proiectare şi programare orientată pe obiecte](https://reader031.fdocuments.es/reader031/viewer/2022012418/6173645e1345d3539e45da8c/html5/thumbnails/43.jpg)
Algebra liniara si geometrie analitic ă
![Page 44: Tehnici de proiectare şi programare orientată pe obiecte](https://reader031.fdocuments.es/reader031/viewer/2022012418/6173645e1345d3539e45da8c/html5/thumbnails/44.jpg)
R=(-4,-1,-5)
![Page 45: Tehnici de proiectare şi programare orientată pe obiecte](https://reader031.fdocuments.es/reader031/viewer/2022012418/6173645e1345d3539e45da8c/html5/thumbnails/45.jpg)
R=0,1,-2
R=ROTATIE
![Page 46: Tehnici de proiectare şi programare orientată pe obiecte](https://reader031.fdocuments.es/reader031/viewer/2022012418/6173645e1345d3539e45da8c/html5/thumbnails/46.jpg)
R=?
a. 30x+17y-6z-107=0
R=2X-3Y+4Z-1=0
Întrebarea nr. 12
0 din 6 puncte
Ecuatia planului determinat de dreptele paralele
![Page 47: Tehnici de proiectare şi programare orientată pe obiecte](https://reader031.fdocuments.es/reader031/viewer/2022012418/6173645e1345d3539e45da8c/html5/thumbnails/47.jpg)
Selected Answer: a. x+y-3z-3=0
R=?
R=-3X+4Y-Z-1=0
R=alfa=-6,beta=3/2
b.
![Page 48: Tehnici de proiectare şi programare orientată pe obiecte](https://reader031.fdocuments.es/reader031/viewer/2022012418/6173645e1345d3539e45da8c/html5/thumbnails/48.jpg)
R=alfa apartine (0,4)
![Page 49: Tehnici de proiectare şi programare orientată pe obiecte](https://reader031.fdocuments.es/reader031/viewer/2022012418/6173645e1345d3539e45da8c/html5/thumbnails/49.jpg)
R=hiperboloid cu 2 panze
R=paraboloid eliptic
R=3x^2+6x^2+9x^2=1 elipsoid
![Page 50: Tehnici de proiectare şi programare orientată pe obiecte](https://reader031.fdocuments.es/reader031/viewer/2022012418/6173645e1345d3539e45da8c/html5/thumbnails/50.jpg)