You are on page 1of 29

INFORMATICA (4 ani) LICENTA 2007 SUBIECTE PROPUSE LA DISCIPLINELE DE INFORMATIC

1. Algoritmi si Structuri de Date I 1. Algoritm de generarea a tuturor submultimilor unei multimi descriere si implementare in Java. 2. Algoritm de simulare a inmultirii numerelor naturale mari descriere si implementare in Java. 3. Algoritmi recursivi descriere si implementare in Java (de exemplu, folosind problema acoperirii tablei de sah prin mutari ale calului). 4. Algoritm de generare a combinarilor descriere si implementare in Java. 5. Algoritm de determinare a tuturor triangulatiilor unui poligon convex descriere si implementare in Java. 6. Scrieti un program pentru determinarea tuturor radacinilor rationale ale unei ecuatii cu coeficienti intregi. 7. Scrieti un program pentru descompunerea unui numar natural ca suma de cat mai putini termeni din sirul Fibonacci ( F0 = 0, F1 = 1, Fk = Fk 1 + Fk 2 , k 2 ).
n . Sa se scrie un 8. Fie x1 si x2 radacinile ecuatiei x 2 3 x + 2 = 0 si S n = x1n + x2 program care determina numarul divizorilor lui S50 . 9. Scrieti un program pentru determinarea numarului combinarilor de 1234 elemente luate cate 567 (atentie: rezultatul are 369 cifre!). 10. Scrieti un program care sa determine cea mai mica valoare a lui n astfel incat 1234567 = x1 + x2 + ... + xn si xk {k , k } ,1 k n

2. Algoritmi si Structuri de Date II 11. Metoda backtracking descriere si exemple. 12. Algoritmi eficienti de sortare descriere si exemple (quicksort, heapsort). 13. Metoda programare dinamica descriere si exemple. 14. Algoritmi pentru determinarea arborelui partial minim (Prim, Kruskal). 15. Metode de parcurgere a grafurilor neorientate descriere si aplicatii. 16. Scrieti un program care sa afiseze toate partitiile lui 32 ca suma de numere naturale impare (nu conteza ordinea termenilor).

17. Scrieti un program care sa determine un subsir crescator maximal dintr-un sir de 100 de numere naturale preluat dintr-un fisier text. 18. Se preia dintr-un fisier text o matrice cu 30 linii si 40 coloane. Elementele matricei sunt numai valori 0 sau 1. Scrieti un program care sa determine un dreptunghi de arie maxima in aceasta matrice, care sa contina numai elemente nule (dreptunghiul va fi determinat de cele doua linii si cele doua coloane intre care se afla valorile indicilor elementelor care fac parte din acest dreptunghi). 19. Scrieti un program care sa determine componentele conexe ale unui graf neorientat. 20. Scrieti un program care sa determine distanta minima dintre doua noduri ale unui graf neorientat ponderat folosind algoritmul lui Dijkstra. 3. Programarea calculatoarelor 21. Elemente de baza ale programarii in Java. Tipuri de date. Notiunea de variabila. Metode. Supraincarcarea metodelor. Transferul parametrilor. 22. Recursivitate. Conceptul de recursivitate. Functii matematice recursive. Implementarea recursivitatii in Java. 23. Structuri statice de date. Tablouri de date uni- si multidimensionale in Java. 24. Structuri dinamice de date: liste, stive, cozi, arbori binari. Implementarea structurilor dinamice de date in Java. 25. Programarea intrarilor si iesirilor in Java. 26. Un medicament se caracterizeaza prin denumire, compoziie, indicaii, contraindicaii i mod de administrare. Sa se scrie o clas Medicament care implementeaza caracteristicile medicamentelor si furnizeaz metode publice prin care se pot obtine informatii despre un anumit medicament. Informatiile despre medicamente vor fi preluate din fisierul dateMedicamente.txt cu urmatorul continut:
neo-angin | amilmetacrezol, alcool, levomentol | tratatementul bolilor inflamatorii | copii sub 6 ani | la 2-3 ore famotidin | 20 mg de famotidin | ulcer gastric i duodenal | hipersensibilitate la substana activ | o singur doz/zi flamexin | ciclodextrin, glicolat de sodiu | antiinflamatori, antireumatic | alergie la piroxicam | un comprimat pe zi

Sa se foloseasca clasa Medicament, precum si o structura de date (la alegere) pentru a scrie o clasa numita AgendaMedicala care furnizeaza metode ce implementeaza urmatoarele operaii: afisarea denumirii medicamentelor n ordine alfabetic, cautare dup denumirea unui medicament, afiarea informaiilor unui anumit medicament, ttindu-se numele acestuia.

27. Un abonat telefonic se caracterizeaza prin nume, prenume, adresa i numar de telefon. Sa se scrie o clasa Abonat care implementeaza caracteristicile unui abonat si furnizeaz metode publice prin care se pot obtine informatii despre un anumit abonat. Informatiile despre abonati vor fi preluate din fisierul date.txt cu urmatorul continut: Ionescu Pop Aleea rozelor 457789 Popescu Ion Strada Sperantei 789064 Marinescu Marin Strada Stejarului 675643 Sa se foloseasca clasa Abonat, precum si o structura de date (la alegere) pentru a scrie o clasa numita AgendaTelefonica care furnizeaza metode ce implementeaza urmatoarele operaii: - afisarea abonailor n ordine alfabetic dup numele acestora, - cautare dup numele unui abonat, - cautare dup numrul de telefon, - adaugarea unui abonat, - stergere a unui abonat. In plus, clasa AgendaTelefonica are o metoda care descarca elementele structurii de date n fisierul date.txt astfel ncat acesta s conin agenda curent de abonai telefonici. 28. Un magazin de jucarii isi stabileste preturile in functie de tipul jucariei: papusi, masinute, jocuri electronice si roboti, ale caror preturi sunt: 1000, 1500, 2000, 3000 lei. Tipurile de jucarii si preturile lor sunt memorate in fisierul jucarii.txt. Sa se scrie clasa Jucarie care implementeaz, cu ajutorul variabilelor, elementele prin care diferentiem un tip de jucarie de celelalte tipuri: descriere tip si pret. S se scrie un program care, cu ajutorul unei liste sau cozi sa se creeze o lista (coada) de jucrii i sa conina o metod care afieaz tipurile de jucrii n ordine descresctoare a preului lor. Aceast metod ar trebui s fie apelat, n cazul n care utilizatorul raspunde cu da la intrebarea: Vreti sa vedeti tipurile de jucarii pe care avem in magazin? Dac utilizatorul rspunde cu nu, atunci programul ar trebui s afieze urmtorul mesaj: Introduceti un tip de jucarie: impreuna cu toate tipurile de jucrii din magazin. Utilizatorul tasteaz numele unui tip de jucrie i programul afieaz preul ei. 29. Sa se scrie un program care realizeaza operatiile asupra conturilor ale unei agenii CEC. Programul actualizeaza conturile existente, adauga conturi noi i afiarea sumei dintr-un anumit cont. Un cont se caracterizeaza prin numar cont, numele unui depuntor i suma curent pe care acesta o are n cont. S se creeze o clasa Cont care implementeaz informatiile despre conturile dintr-o agenie CEC i furnizeaz metode de accesare a acestor informaii. Folosind aceasta clas i o structur de date oarecare (care doriti) s se scrie o clas care furnizeaz metode ce implementeaz operaiile ce pot fi executate asupra conturilor dintr-o agenie CEC: - crearea unui cont. Pentru aceasta programul are nevoie de numele depuntorului i suma cu care deschide contul (aceasta trebuie sa fie >=100 000). Cu aceste informatii, programul va crea un cont nou , genernd un numar de cont nou, i-l va adauga la structura de date folosit.

actualizarea unui cont. Programul are nevoie de numrul contului (a crui validitate este verificat de program ) i de suma pe care o adauga sau scoate din suma curent. - afiarea sumei pe care o are n cont un anumit depuntor. Pentru aceasta, programul are nevoie de numrul contului i va afia numele depuntorului i suma curent din cont. Dac numrul de cont este invalid, atunci se va afia un mesaj de eroare. 30. Evaluarea unor expresii n notatie postfixata. Presupunem c n fiierul expresii.dat din directorul curent sunt memorate cteva expresii aritmetice n notatie postfixata, corecte din punct de vedere sintactic. Fiecare expresie aritmetic este memorat pe cte o linie a fiierului i este format din numere (cifre) i operatorii aritmetici: +, -, *, /, div i mod. S se scrie un program care citete operatorii i operanzii fiecrei expresii din fiier i i introduce ntr-o lista sau coada. Apoi evalueaz expresia respectiv folosind o lista sau stiv (de operanzi) i implementnd urmtorul algoritm:
atta timp ct coada nu este vida: - extrage un element din coad pe care l notm cu E - daca E este operand atunci pune E n stiva - daca E este operator atunci: - extrage OP2 i OP1 din stiva - calculeaza R = OP1 E OP2 - pune R n stiva - scoate elementul din stiv i l afieaz.

4. Organizarea Sistemelor de Calcul 31. Descriei funcionarea unui microprocesor generic.Specificai prile componente. 32. Organizarea regitrilor i a memoriei la microprocesorul Intel8086. 33. Performana sistemului de calcul. 34. Transputere. Consideraii generale i arhitectur. 35. Arhitecturi multiprocesor. Consideraii generale. : definiie, clasificare Flynn, Enslow, organizare. 36. Calculatoare orientate pe flux de date. 37. S se scrie un program n limbaj de asamblare care cripteaz/decripteaz prin translaie de n un text introdus de la tastatur. 38. S se scrie un program n limbaj de asamblare care afieaz suma a dou numere de maxim dou cifre introduse de la tastatur. 39. S se scrie un program n limbaj de asamblare care afieaz produsul a dou numere de maxim dou cifre introduse de la tastatur. 40. S se scrie un program n limbaj de asamblare care afieaz pe ecran o figur geometric i o animeaz.

5. Sisteme de operare 41. Strile proceselor n sistemele cu multiprogramare i mecanismele, bazate pe ntreruperi, pentru modificarea strii unui proces. 42. Problematica comunicrii ntre procese prin memorie comun i soluia de principiu. 43. Memoria virtual: definiie i modele. Tabela de pagini vzut ca funcie i mecanismul de obinere a adresei fizice din adresa virtual. 44. Structurile de date utilizate de sistemul de operare pentru implementarea gestiunii fiierelor cu index-noduri. 45. Justificai necesitatea apelului sistem open (deschidere fiier). Cum sunt utilizate rezultatele produse de executarea sa? 46. Creai un fiier de comenzi Linux (script) care se va lansa cu un parametru (nume reprezentnd ID-ul unui utilizator) i va executa, succesiv, urmtoarele operaii: - crearea structurii:
/home/myname DD1 DD2 DD3 DD4 DD5 DD6

transferul controlului ctre utilizator pentru a-i permite editarea cu vi a unui text ce va fi salvat n fisierul exercitiu n directorul DD4, copierea fiierului exercitiu in DD6, afiarea listei utilizatorilor conectai i redirectarea ei ctre fiierul cine din DD3, cutarea n acest fiier a utilizatorului cu numele dat ca parametru de intrare n script i afiarea liniei corespunztoare acestuia, dac e conectat, sau afiarea mesajului nume neconectat dac nu e conectat.

47. ntr-un sistem cu multiprogramare, fie procesele p1, p2 i p3 care produc ieiri sub form de caractere utiliznd rutina putc. Ele se sincronizeaz folosind dou semafoare: L i R.
semaphore L=3, R=0 /*cod P1*/ L1: DOWN(L); putc(C); UP(R); goto L1; /*definire i iniializare semafoare*/ /*cod P2*/ L2: DOWN(R); putc(A); putc(B); UP(R); goto L2; /*cod P3*/ L2: DOWN(R); putc(D); goto L3;

a. Precizai numrul de caractere D ce vor fi afiate la executarea acestui set de procese. Explicai. b. Demonstrai c secvena de caractere CABABDDCABCABD nu este o ieire posibil a acestei execuii. 48. ntr-un sistem cu multiprogramare, fie procesele p1, p2 i p3 care produc ieiri sub form de caractere utiliznd rutina putc. Ele se sincronizeaz folosind dou semafoare: L i R.
semaphore L=3, R=0 /*cod P1*/ L1: DOWN(L); putc(C); UP(R); goto L1; /*definire i iniializare semafoare*/ /*cod P2*/ L2: DOWN(R); putc(A); putc(B); UP(R); goto L2; /*cod P3*/ L2: DOWN(R); putc(D); goto L3;

a. Indicai numrul minim de caractere A ce se pot afia. Explicai. b. Demonstrai c secvena de caractere CABACDBCABDD este o ieire posibil a acestei execuii. 49. Fie un sistem de operare ce execut gestiunea memoriei virtuale cu tabele de pagini pe un singur nivel. Memoria fizic este de 1 Goct. iar adresele n cadrul programelor sunt reprezentate pe 32 bii (adresarea fcndu-se la nivel de octet). Dac tabela de pagini are 220 intrri, calculai dimesiunea paginii i numrul de bii pe care este reprezentat numrul cadrului de pagin. 50. Cte operaii cu discul sunt necesare pentru a aduce n memorie i-nodul fiierului /home/studenti/cursSO/subiecte.txt ? Presupunei c i-nodul directorului rdcin este deja n memorie, dar nimic altceva pe parcursul cii de mai sus nu este adus n memorie. De asemenea, se presupune c fiecare director ocup doar un bloc de pe disc. Explicai.

6. Programare orientata pe obiect 51. Motenire i polimorfism. Implementarea in Java a relatiei de generalizare/specializare. 52. Clase abstracte si interfete. Realizarea mostenirii multiple prin folosirea interfetelor. 53. Clase interne. 54. Tratarea evenimentelor de catre componentele grafice AWT. 55. Colectii de obiecte. 56. Sa se scrie un program (applet) care sa ajute un elev sa invete nmulirea a dou numere formate din cte o cifr. Programul ar trebui sa genereze aleator numere intre 0 i 9, inclusiv i s afieze n bara de stare a applet-ului mesaje de genul : Cat face 6 ori 7? Elevul raspunde intr-un cmp de text i apas Enter, iar programul verifica raspunsul. Daca este corect, programul alege la intamplare unul din mesajele Foarte bine!, Raspunsul este corect, Excelent!, Corect, il afiseaza si apoi genereaz i afieaz o alta intrebare. Daca raspunsul este gresit, afiseaza unul din raspunsurile generate tot aleator: Nu. Mai incearca!, Gresit. Mai incearca o data, Ai gresit, dar nu renunta, Nu este rezultatul corect. Apoi lasa elevul sa raspunda la aceasta intrebare pana cand da raspunsul corect. In plus, programul ar trebui sa contorizeze raspunsurile corecte si incorecte. Dupa ce elevul a raspuns de 10 ori, programul ar trebui sa calculeze procentul raspunsurilor corecte. Daca acest procent este mai mic de 75, se va afisa mesajul: Ar trebui sa te meditezi si se va reseta programul, astfel incat un alt elev sa-l incerce. 57. O companie aeriana foloseste un sistem automat de rezervare a locurilor unui avion. Sa se scrie un program care realizeaza acest lucru pentru un singur avion cu capacitatea de 10 locuri la fiecare zbor. Programul ar trebui sa afiseze urmatorul menu de alternative: Alegeti 1 pentru sectiunea de Fumatori Alegeti 2 pentru sectiunea de Nefumatori Daca persoana alege 1, atunci programul ar trebui sa rezerve un loc in sectiunea fumatori (1..5). Altfel, se alege un loc la nefumatori (locurile 6-10). Apoi programul ar trebui sa afiseze un mesaj cu numarul locului si sectiunea fumatori sau nefumatori a avionului. Rezervarea unui loc ar trebui marcata printr-un 1. Cand o sectiune este plina, programul ar trebui sa intrebe clientul daca doreste sa i se rezerve un loc la cealalta sectiune. Daca da, se face rezervarea respectiva. Altfel, se afiseaza mesajul Urmatorul zbor este in 3 ore. Acelasi mesaj va fi afisat si daca nu mai exista nici un loc liber.

58. S se scrie un program care afieaz ntr-o arie de text a unei ferestre codul surs al unei clase Java. Numele clasei este ales dintr-o lista ascunsa (memorata ca elemente ale unei componente grafice Choice sau JComboBox) din directorul curent al programului. Interfata programului este urmatoarea:

Dupa cum se observa, interfata mai contine doua butoane Previous i Next a cror aciune determina afiarea unor liste (in niste ferestre de dialog) ce conin numele claselor ce au fost deschise naintea, respectiv dupa ce codul clasei curente fost afiat. Aceste liste permit reafiarea continurilor claselor ce au mai fost afiate cel putin o dat. 59. Sa se realizeze un applet care simuleaza jocul: Ghiceste numarul. Applet-ul afiseaza mesajul: Ghiceste un numar intre 1 si 1000 langa un camp de text, iar numarul ar trebui generat aleator intre 1 si 1000. Utilizatorul introduce un numar in campul de text si apasa Enter. Daca valoarea este incorecta, programul ar trebui sa afiseze in bara de stare a applet-ului unul din cele doua mesaje Numarul introdus este prea mare. Mai incearca sau Numarul introdus este prea mic. Mai incearca, in functie de numarul introdus. Apoi programul ar trebui sa stearga numarul introdus in campul respectiv. Cand utilizatorul a introdus o valoare corecta, se va afisa in bara de stare mesajul: Felicitari.Ai ghicit numarul!. In plus, programul va contoriza incercarile de a ghici ale jucatorului. Daca numarul de incercari este mai mic sau egal cu 10, se va afisa mesajul: Ori stii secretul, ori esti norocos!. Daca jucatorul ghiceste numarul in exact 10 incercari, programul afiseaza mesajul: Stii secretul!, iar daca l-a ghicit in mai mult de 10 incercari, ar trebui sa afiseze: Ar fi trebuit sa ghicesti numarul pana acum!. 60. Proprietarul unei librrii a hotrt s cumpere un program de gestiune a vnzrii crilor ce se afl n magazinul su. Toate informaiile despre o carte: autor, titlu, editura si pre sunt memorate n fiierul stoc.txt. De exemplu, acest fiier contine urmtoarele informatii:
N. Labi_Moartea caprioarei_Agora_1986_50000 Tanasa, St. Andrei, Olaru_Java de la 0 la expert_ Polirom_2003_500000 I. Athanasiu et al._Java. O perspectiva pragmatica_Agora_1998_150000 B. Eckel_Thinking in Java_Prentice Hall_1998_1000000

Cand se primesc cri in librrie, un angajat al librariei acceseaz programul i introduce datele despre fiecare titlu primit cu ajutorul urmtoarei interfee grafice:

Dupa fiecare titlu introdus, angajatul apas butonul Adauga carte. Cand a terminat, apas butonul actualizeaza stoc care permite actualizarea fisierului stoc.txt cu noile date. In plus, programul permite cutarea i afiarea tuturor crtilor n ordine alfabetic de la o anumit editur. Pentru aceasta, programul afiseaz urmtoarea interfa grafic.: Utilizatorul va introduce in cmpul de text Editura numele unei edituri si va apsa butonul Cauta. Se vor afia intr-o arie de text toate cartile acelei edituri (autor, titlu, pre).

7. Compilatoare 61. Analiza lexicala. Utilizarea expresiilor regulate pentru descrierea atomilor lexicali. 62. Analiza lexicala. Pasii de proiectare a unui analizor lexical. 63. Analiza sintactica predictiva nerecursiva. Gramatici LL(1). 64. Analiza sintactica LR. Cea mai eficienta metoda de construire a unui analizor LR. 65. Scheme de traducere orientata de sintaxa 66. Sa se scrie o specificatie JLex care rezolva numerele reale, operatorii aritmetici si relationali, cuvintele cheie: if, else, while, until si parantezele. 67. Presupunem ca avem un limbaj de programare cu urmatoarea gramatica: S if E then S else S | begin SL | print E L end | ; SL E num = num a) Construiti un analizor predictiv recursiv pentru acest limbaj. b) Implementati in Java analizorul obtinut la pasul anterior. 68. Fie G=(N, , P, S) gramatica numerelor binare zecimale: S L.L | L L LB | B B0|1 a) Calculati valorile functiilor PRIM si URM pentru fiecare neterminal al gramaticii. b) Construiti tabela de analiza a unui analizor predictiv nerecursiv pentru G si verificati daca gramatica G este LL(1). 69. Fie G=(N, , P, E) gramatica cu urmatoarele productii: E while E do E | id:=E | E+E | id Construiti un analizor LR(1) folosind metoda LALR. Verificati daca G este o gramatica LALR. In caz negativ, eliminati conflictele luand deciziile cele mai bune din punct de vedere semantic. Verificati functionarea analizorului pentru sirul de la intrare while id do id:=id+id. Ce se obtine pe banda de iesire? 70. Sa se construiasca o schema de traducere care realizeaza traducerea expresiilor aritmetice din forma infixata in forma prefixata.

8. Baze de date 71. Definiia cheilor. Algoritmul de asistena proiectrii cheilor pentru tipurile de obiecte din MMED i teorema sa de caracterizare (enun i demonstraie). 72. Enunai i demonstrai teorema principiului propagrii cheilor. Dai un exemplu. 73. Algoritmul pentru traducerea diagramelor E-A n schemele relaionale corespunztoare i teorema sa de caracterizare (enun i demonstraie). 74. Enunai i demonstrai teorema de caracterizare a funciilor structurale. Dai un exemplu. 75. Algoritmul pentru traducerea schemelor MMED n schemele relaionale corespunztoare i teorema sa de caracterizare (enun i demonstraie). 76. Fie urmtoarea schem de relaie (i o posibil instan valid a sa): MPRUMUTURI #mprumuturi Cri Cititori Datemprumut DateReturCerut DateReturEfectiv autonumber Date Date Date #Cri #Persoane 1 1 1 15/05/2007 30/05/2007 2 2 1 15/05/2007 17/05/2007 20/05/2007 a. Care este numrul maxim teoretic posibil de chei semantice pe care le poate avea aceast relaie? b. Cte are de fapt? c. Care sunt acestea? d. De ce? 77. Fie urmtoarele 5 funcii: Continent : RI CONTINENTE, ara : STATE RI, Numeara : RI CHAR(32), #Continent : CONTINENTE NAT(2) i #ara : RI NAT(3) a. Care dintre ele ar putea i care ar trebui s fie propagate unde? De ce? b. Care dintre cele propagate sunt injective? De ce? c. Este posibil propagarea #Continent n STATE? Este acest lucru recomandabil? De ce? d. Dar propagarea Numeara n STATE? De ce? 78. Fie urmtoarele 6 funcii: ara : LOCALITI RI Capitala : RI LOCALITI Numeara : RI CHAR(32) Populaie : RI NAT(16) #Localitate : LOCALITI NAT(8) #ara : RI NAT(3)

a. Exist vreo funcie f : CHAR(32) NAT(8) care s fac comutativ urmtoarea diagram? Cte asemenea funcii sunt posibile? De ce?

b. Dac exist, n ce circumstane ar fi f injectiv ? 79. Fie urmtoarea diagram E-A: COND_NSCRIERI Precondiie CURSURI IDCurs TitluCurs Curs

a. Traducei-o n schema MMED corespunztoare. b. Traducei-o n schema relaional corespunztoare. Furnizai o posibil instan valid avnd cel puin dou linii pentru fiecare tabel. c. Ce s-ar ntmpla dac graful COND_NSCRIERI ar fi ciclic? De ce? Dai un exemplu i un contraexemplu.

80. Fie urmtoarea schem i instan de baz de date: MPRUMUTURI #mprumuturi Cri Cititori Datemprumut DateReturCerut DateReturEfectiv autonumber Date Date Date #Cri #Persoane 1 1 2 15/05/2007 30/05/2007 17/05/2007 2 2 2 15/05/2007 17/05/2007 20/05/2007 3 3 3 17/05/2007 18/05/2007 18/05/2007 4 1 2 25/05/2007 15/06/2007 CRI #Cri TitluCarte PrimAutor autonumber ASCII(255) #Persoane 1 Se nnopteaz. Se las cea. 2 2 Opera poetic complet 1 3 Marea Teorem a lui Fermat 3 PERSOANE #Persoane Prenume Nume 1 Lucian Blaga 2 Mihai Zamfir 3 Simon Singh a. Proiectai instruciunile SQL ce formalizeaz urmtoarea ntrebare: Care sunt crile (Titlu, Prenume i Nume prim autor) care au fost mprumutate de cel puin n persoane ntre datanceput i dataSfrit, cu condiia ca cel puin un cititor s fi mprumutat fiecare asemenea carte de cel puin dou ori n perioada de timp dat? b. Fie n = 1, datanceput = 15/05/2007 i dataSfrit = 30/05/2007; calculai rspunsul la ntrebarea de mai sus pentru instana propus. 9. Programarea Concuret i Distribuit 81. Calculul paralel, calculul concurent, calculul distribuit: defiiii, relaii ntre ei. 82. Modele i metrici pentru evaluarea performaelor algoritmilor concurei. Legea lui Amdahl 83. Situaii de excepie generate de concuren: descriere, condiii necesare sau suficiente de apariie. 84. Analiya dependenelor. Condiiile lui Bernstein. Exemple. 85. Tehnologia RMI: relaia RMI cu RPC, schema de funcionare, etapele pe care le include. 86. Problema Consumatorilor i Productorilor. Formulare. Soluionare (n Java). 87. Problema filozofilor chinezi. Formulare. Soluionare (n Java). 88. Problema Cititorilor i Scriitorilor. Soluionare (n Java). 89. Adunarea concurent a N numere. Soluionare (n Java). 90. Problema Cititorilor i Scriitorilor. Soluionare folosind pipe-urile (n Java).

10. Reele de calculatoare 91. Rutare dinamica: Algoritmul Dijkstra pseudocod + exemplificare numerica 92. Rutare dinamica: Algoritmul Bellman-Ford - pseudocod + exemplificare numerica 93. Nivelul legtura de date: protocoalele Ethernet - IEEE 802.3; 94. Subalocarea unei adrese de retea date (Subnetting) : algoritm si exemplificare 95. Utilizarea mastilor de retea de lungime variabila (VLSM) : algoritm si exemplificare 96. Aplicatie subnetting:

O nou reea este proiectat pentru companie. Folosind un IP de reea de Clas C, ce masc de subreea va pune la dispoziie cte o subreea utilizabil pentru fiecare departament, n timp ce se permit suficiente adrese de host utilizabile pentru fiecare department specificat n figur? Sa se scrie adresele IP pentru toate gazdele din figura, organizate pe departamente, specificand totodata adresele de subretea si de broadcast pentru fiecare departament.

97. Considernd reteaua din figura, n care etichetele reprezenta distanta, se cere determinarea tabelei de rutare pentru nodurile 1 si 4, folosind algoritmul Dijkstra

98. Considernd reteaua din figura, n care etichetele reprezenta distanta, se cere determinarea tabela de rute completa, folosind algoritmul Bellman Ford

99. Comunicare TCP la client Aplicatie Java 100. Comunicare TCP la server - Aplicatie Java

11.Complexitatea algoritmilor 101.Prezentati algortimul de parsare CYK pentru gramaticile independente de context. Determinai complexitatea de timp dac gramatica independent de context de intrare este n forma normal Chomsky. Exemplificati pe gramatica G = ({S, A, B, C}, {a, b}, P, S), unde P este A BA | a B CC | b C AB | a i cuvntul de intrare este w = baaba. 102.Demonstrai existena unor limbaje ce nu sunt recursiv enumerabile. 103.Demonstrai c problema opririi pentru maina Turing este nedecidabil. 104.(Teorema de accelerare liniar) Demonstrai c pentru orice main Turing M cu k benzi, k > 1 ce accept limbajul L astfel nc ct M (n) = f(n) se poate construi o main Turing N cu k benzi echivalent astfel nct ct N [cf(n)] + 2n + 3 , pentru orice constant c>0. 105.Demonstrai c dac M este o main Turing cu dou benzi astfel nct cs M = f(n) atunci, ct M (n) c f ( n ) , unde c depinde de n, de f(n), de numrul de simboluri ale benzii lui M i de numrul de stri ale lui M. 106.Rspundei i argumentai: a) n log 2 (n) = O(n) ? b) 3 n = O(2 n ) ? c) 2 n O(n r ), r 1 ? d) n 2 n 10 = O(n 2 + 10n + 10) ? 107.Demonstrai c limbajul L = {ww R | w {a, b}*} nu este acceptat de nici un automat finit. Construii i comentai maina Turing determinist standard ce accept acest limbaj. 108.Construii o main Turing ce calculeaz funcia n 2 , n 1 Comentai construcia. 109.Construii o masin Turing cu k>1 benzi ce accept limbajul L = {0 n1n 0 n | n 1} . Comentai construcia i calculai complexitatea de spaiu. 110.Construii o main Turing determinist care reduce limbajul L1 = {a i (bb) i | i 0} la L2 = {a i b i | i 0} n timp polinomial. Comentai construcia i stabilii complexitatea de timp a mainii care calculeaz reducerea.

12. Inteligen artificial 111.Algoritmii genetici: schema general, exemplu de utilizare. 112.Logica predicatelor: algoritmul metodei rezoluiilor, exemple. 113.Metode de cutare sistematic: cutarea n adncime, cutarea n lime, algoritmul A*. Descrierea algoritmilor i compararea complexitii lor de timp i de spaiu. 114.Reelele neuronale: tipuri de reele conform topologiei lor. Perceptronul: regulile de instruire a perceptronului. Exemplu. 115.Managementul informaiei inexacte: utilizarea schemei Bayes. Exemplu. 116.Se consider urmtoarele afirmaii: A) Coconut is a bicuit. B) Mary is a child who takes coconut. C) John loves children who takes coconut. D) John loves Mary. Este oare adevrat afirmaia D), dac presupunem c afirmaiile A), B) i C) sunt adevrate. 117.Scriei i justificai un program n Prolog, care ar determina dac un element aparine unei liste. 118.Considerm spaiul ipotezelor i spaiul evidenelor n cazul unui sistem medical de diagnoz. Regulile, care reprezint relaia dintre spaiul de evidene i spaiul ipotezelor, sunt definite de probabiliti condiionate. S se determine de ce boal sufer probabil pacientul. Spaiul ipotezelor este determinat de: tif (T) 0.2, febr german (GM) 0.3, grip aviar (CP) 0.5. Spaiul evidenelor este: oboseal (F), guturai (R), dureri de muchi (HBA). Setul de reguli este: Regula 1: dac simptomele indic F (cu probabilitatea 0.9) i HBA (cu probabilitatea 0.6), atunci pacientul sufer de T. Regula 2: Dac simptomele sunt F (cu probabilitatea 0.8), R (cu probabilitatea 0.7) i HBA (cu probabilitatea 0.8), atunci pacientul are GM. Regula 3: Dac simptomele sunt F (cu probabilitatea 0.6), R (cu probabilitatea 0.9) i HBA (cu probabilitatea 0.8), atunci pacientul are CP. 119.O baz de date, care este folosit pentru reprezentarea cunotinelor despre cri, librrii, i edituri este dat i este descris de fapte de tipul:
sell(Store,Publisher). book(Title,Publisher). opened(Store). closed(Store). /*librria Store vinde cri de la editura Publisher*/ /*Cartea Title este publicat de editura Publisher*/ /*Librria Store este deschis*/ /*Librria Store este nchis*/

S se scrie interogrile pentru a obine rspunsul la urmtoarele tipuri de nbtrebri: - Cine a publicat cartea Mara? - Care librrie vinde cri de la editura Nemira? Scriei un program valid n Prolog pentru a justifica rspunsurile la ntrebri. 120.Scriei i justificai programe Prolog pentru operaiile cu mulimi: reuniunea, intersecia.

13. Metode avansate de programare 121.Notiunea de clasa. Elemente structurale. Grade de acces. 122.Derivarea claselor. Derivarea simpla. Derivarea multipla. 123.Prezentati notiunea de "polimorfism" in contextul unei ierarhii ce contine o clasa de baza si doua clase derivate. 124.Clase abstracte. 125.Redefinirea operatorilor. Principii si exemple pe tipuri de operatori. 126.Implementati clasa asociata tipului abstract de date numere Complexe care sa permita memorarea unui numar complex, determinarea modulului acestuia precum si compararea a doua numere complexe in functie de modulul acestora. Metoda de comparare va avea urmatoarea semnatura: int compara(Complex &z1, Complex &z2); 127.Implementati clasa asociata tipului abstract de date Vector care sa permita memorarea unui vector de n numere reale. Implementati operatorii corespunzatori operatiilor de adunare a doi vectori si inmultire a unui vector cu un scalar. 128.Implementati clasa asociata tipului abstract de date Matrice care sa permita memorarea unei matrici patratice de nxm numere reale (memorarea elementelor se face pe linii). Implementati operatorii corespunzatori operatiilor de adunare si inmultire a doua matrici. 129.Implementati clasa asociata tipului abstract de date ArboreBinar. Implementati si exemplificati metoda de parcurgere inordine. 130.Implementati clasa asociata tipului abstract de date ArboreBinar. Implementati si exemplificati metoda de parcurgere preordine. 14. Programarea in Web 131.Noiunea de sesiune i gestiunea ei n tehnologiile ASP, PHP i JSP/Servlet. 132.Identificarea n Java scripting la client, n ASP, n PHP i n JSP/Servlet a cmpurilor din formele HTML. 133.Resurs, identificator, reprezentare: definiii i relaii. 134.Ciclul de via al unui servlet. Explicaii. 135.Modelul DOM-HTML. 136.Caracteristicile specifice clasei HttpServlet. Dai un exemplu de utilizare care s conin att pagina HTML din care se va genera cererea cu metoda POST ct i codul servlet-ului ce constituie resursa accesat. 137.Caracteristicile limbajului XPath. Descriei rezultatul expresiei : //item[@type=facultate]/curs[text()=Programare]. 138.Creai un document de tip XMLSchema specificnd i spaiul de nume pentru elementele definite n acesta. Tipul de document definit cu aceast schem XML conine un element de tip ir de caractere i un element de tip complex. Tipul complex are 2 atribute i 2 subelemente. Unul dintre subelemente este obligatoriu i poate s apar o singur data, cel de al doilea poate s apar, de asemenea, o singur dat dar nu este obligatoriu. Unul dintre atribute este

obligatoriu, iar cellalt este opional. Dai un exemplu de document instan a tipului definit cu schema XML de mai sus. 139.Creai o pagin Web cu dou frame-uri. ntr-un frame sunt afiate trei butoane cu numele a trei cursuri. Cnd se solicit, prin apsare pe buton, un curs textul acestuia apare n al doilea frame, cu condiia ca solicitarea s fie fcut n ziua din sptmn i ntre orele n care se ine cursul. 140.Exemplificai pe un cod simplu, ntr-un limbaj de programare la server ales de voi, etapele accesului standard la o baz de date. 15. Ingineria programarii 141.Modelul de dezvoltare a software-ului Rational Unified Process. 142.Modelare business. Diagrame de activitati ale cazurilor de utilizare business. 143.Proiectarea arhitecturilor software. Aplicarea modelelor generale de proiectare in stabilirea responsabilitatilor claselor. 144.Proiectarea cazurilor de test. 145.Conducerea proiectelor software. Construirea diagramei retea a unui proiect software. 146.Fie cazul unui sistem software de gestiune a magaziei de marfuri a unui magazin de cafea. In acest magazin se vnd doua tipuri de cafea: boabe si macinata, ambalata in pachete. Aceste pachete se primesc in loturi de la firmele furnizoare. Pentru fiecare lot primit in magazin, sistemul va memora data primirii si numarul de kilograme ale lotului si ii va asocia un numar de identificare ce va fi unic pentru fiecare lot in parte. De asemenea, sistemul va calcula pretul de vanzare a pachetelor din lot, in functie de pretul unitar primit de la furnizor la care se adauga tva-ul. Valoarea tva-ului poate diferi de la un lot la altul, dar este aceeasi pentru toate pachetele ce apartin unui acelasi lot. In plus, sistemul va calcula data de expirare a pachetelor dintr-un anumit lot, stiind ca orice pachet de cafea are termen de valabilitate 2 ani. Dupa aceea, sistemul va adauga lotul la stocul existent in magazin. Vinderea pachetelor de cafea determina actualizarea stocului din magazin, operatie ce va fi bineinteles memorata de catre sistem. La intervale regulate de timp, sistemul genereaza rapoarte ce contin urmatoarele informatii: - data curenta (data la care a fost generat raportul), - cantitatea disponibila in stoc, exprimata in numarul de pachete aflate in momentul generarii raportului in stoc, - data expirarii fiecarui lot de pachete de cafea din stoc. Pentru sistemul descris se cere: a) b) Identificarea conceptelor domeniului problemei ale acestui sistem impreuna cu atributele lor principale. Construirea modelului domeniului.

c)

Construirea unei diagrame de interactiuni (adica o diagrama de secvente sau de colaborare, la alegere) pentru operatia de sistem de calculare a pretului de vanzare a pachetelor de cafea dintr-un lot. Construirea o diagrama de tranzitii de stari pentru obiectele clasei Stoc.

d)

147.Se considera un sistem de plata a angajatilor unei firme de software. Astfel, acestia vor fi platiti dupa numarul de ore lucrate in cadrul firmei. Sistemul este format dintr-un numar de terminale care inregistreaza numarul de ore lucrate de un angajat in fiecare zi. Asadar, una din functiile principale ale sistemului este sa memoreze timpii in care angajatii se prezinta la firma, merg in pauza, reiau lucrul dupa pauza si pleaca de la firma (dupa cum se observa, programul de lucru al unei zile contine o pauza, dar, daca doreste, un angajat poate sa nu beneficieze de aceasta). Pentru aceasta, fiecare angajat are o legitimatie cu care se identifica la un terminal al sistemului si pe care o introduce intr-o fanta a terminalului respectiv. Dupa ce angajatul executa aceasta operatie, sistemul il verifica, cautandu-l intr-o baza de date si asteapta apoi ca acesta sa aleaga tipul de activitate pe care urmeaza s-o faca, afisand o interfata ca in figura urmatoare: Apoi, terminalul inregistreaza momentul evenimentului si afiseaza ora exacta ind icand ca este gata sa inregistreze urmatorul angajat. Se cere: a) Sa se construieasca mdoelul de robustete Jacobson al obiectelor ce colaboreaza in cazul de utilizare a carui functionalitate este descrisa mai sus. b) Sa se proiecteze o diagrama de interactiuni pentru cazul in care un angajat se inregistreaza la inceputul unei zile de lucru. c) Sa se construiasca modelul static rezumat cazul de utilizare descris mai sus. 148.Se considera un sistem de rezervari a biletelor la spectacole de teatru. Rezervarile nu se fac direct la casa de bilete, ci prin intermediul unor masini specializate in acest tip de operatie. Un spectacol este identificat prin nume, dar acelasi spectacol se joaca pe o perioada de timp si maxim de doua ori in aceeasi zi. Pentru fiecare client, sistemul memoreaza numele si numarul de telefon al acestuia, pentru a-i confirma rezervarea facuta. Clientii pot avea mai multe rezervari, dar fiecare rezervare este facuta de un singur client. Rezervarile sunt de doua tipuri: serie de rezervari si rezervare individuala. Ambele presupun furnizarea de bilete, numai ca, in primul caz, este furnizat un abonament, iar in al doilea caz, un singur bilet. La fiecare spectacol sunt disponibile un numar nedeterminat de bilete, fiecare avand un loc unic.

a) Sa se construiasca documentul de cerinte al sistemului. b) Sa se construiasca modelul domeniului al acestui sistem. 149. Sa consideram sistemul informatic al unei agentii de inchirieri de masini. Agentia stipuleaza contracte cu clientii privind inchirierea unei masini de un anumit tip (marca) si cu un anumit echipament instalat, prevazut din fabrica de marca respectiva (de exemplu, pachetul optional continand airbag-uri pentru toti calatorii, ferestre automate etc.). Contractele se pot incheia de client la fata locului sau se pot face rezervari in prealabil prin posta, telefon sau fax. Clientul are la dispozitie tarifele de inchiriere ale agentiei, iar rezervarea sau contractul va indica tariful ales de client. Rezervarile pot diferi de contracte. Poate diferi de exemplu perioada: clientul poate restitui masina mai devreme sau mai tarziu decat a rezervat-o. De asemenea, pentru ca la prezentarea clientului in agentie, agentia nu mai are disponibil un vehicol de tipul rezervat, contractul poate specifica un vehicol mai bun decat cel rezervat, dar la acelasi pret. La rezervare se face atat o verificare a datelor clientului, cat si a vehicolelor disponibile. Clientul poate fi unul cunoscut sau unul nou in care caz i se vor cere datele pentru a fi inregistrat. In cazul ca nu este disponibil vehicolul cu toate accesoriile cerute de client, i se cere acestuia sa specifice o alta optiune. In contract sunt prevazuti unul sau mai multi soferi. Titularul contractului nu trebuie neaparat sa fie printre ei. La momentul predarii masinii de catre agentie clientului se stipuleaza un act de predare, aditional la contract, continand starea masinii (eventuale deteriorari, kilometrajul la bord etc.) si data curenta. De asemenea se verifica carnetele de conducere ale soferilor care trebuie sa corespunda cu informatiile din actul aditional.Un act asemanator, dar de restituire, va fi intocmit la restituirea vehicolului. Si el constituie un act aditional la contract. Daca in timpul folosirii masinii, clientul a suferit/provocat unul sau mai multe accidente, actele privind aceste accidente se anexeaza actului de restituire a vehicolului. In fine, la predare se face calculul contractarea vehicolului si se emite una sau mai multe facturi (pentru timpul prevazut de inchiriere, pentru timpul suplimentar, pentru eventualele daune etc.) conform informatiilor prevazute in contract si actele aditionale. Pentru sistemul de inchiriere de vehicole descris mai sus se cere: a) Construiti modelul conceptual al sistemului. b) Construiti diagrama de activitati a cazului de utilizare Rezervare vehicol cu mentionarea obiectelor business implicate. c) Construiti o diagrama de secvente sau de colaborare pentru operatia de rezervare: rezervare_vehicol(cod_client, tarif, marca_masina, tip_pachet_accesorii, lista_ accesorii_speciale, data, nr_zile) 150. Sa consideram un sistem de transmitere a mesajelor ce are la baza modelul expeditor-destinatar, model dat ca exemplu clasic in modelarea sistemelor concurente. Acest model presupune existenta a cel putin un expeditor care trimite spre un destinatar mesaje, unul cate unul, folosind un buffer (locatie temporara) pentru depozitarea lor. Presupunem ca suntem in cazul unui expeditor si a unui

destinatar, care sunt de fapt subsisteme ale sistemului nostru. In timpul functionarii sistemului, expeditorul trece prin urmatoarele stari: - este pregatit pentru o noua transmisie, - a transmis un mesaj, - este in stare de repaus. La randul su, destinatarul trece prin urmatoarele stari: - a receptionat un mesaj, - este pregatit pentru receptionarea altui mesaj, - este in stare de repaus. Presupunem ca buffer-ul are o dimensiune limitata n1. Atunci expeditorul nu poate trimite nici un mesaj atat timp cat buffer-ul este plin, iar destinatarul nu poate primi nici un mesaj cat timp buffer-ul este vid. De aceea, in cazul ca intentioneaza sa faca o expeditie/receptie, expeditorul/destinatarul trebuie mai intai sa verifice daca buffer-ul este plin/gol si in caz negativ executa operatia, iar in caz afirmativ trece in asteptare. a) Construiti documentul de cerinte a sistemului. b) Construiti o diagrama de interactiuni (de secvente sau de colaborare) ce arata colaborarea obiectelor in cazul scenariului de transmitere a primului mesaj de la expeditor la destinatar (adica, buffer-ul este vid inainte de a se face trimiterea). c) Construiti diagrama completa de clase a aplicatiei. d) Construiti statechart-ul (masina de stari) pentru clasa Buffer. 16. Analiza i Proiectarea Sistemelor Informatice 151. Procese software (Definiie, activitti, modele) 152. Analiza i proiectarea orientate spre obiecte a sistemelor (OOAD). Caracteristici generale. 153. OOAD. Analiza cerinelor 154. UML. Modelare dinamic 155. UML Modelare statica 156. abloane de proiectare. Consideraii generale i clasificare. 157. Implementai clasa Logger care ndeplinete funcia de jurnal n cadrul unei aplicaii mai mari. Obiecte Logger vor fi folosite de celelalte clase ale aplicaiei pentru a menine un jurnal cu operaiile efectuate de acestea. La instanierea unui obiect Logger, acesta deschide fiierul "lastrun.log" pentru scrierea mesajelor trimise ctre jurnal. Un client poate trimite mesaje n jurnal folosind metoda void write(String message). Trebuie s avei grij ca n timpul unei rulri s existe o singur instan Logger, altfel coninutul fiierului lastrun.log va fi invalid sau incomplet. Ce ablon de proiectare considerai adecvat n acest caz? Realizai diagrama de clase UML i implementai clasa Logger. 158. n limbajul Java, clasa java.io.RandomAccessFile nu poate fi folosit n ierarhiile java.io.InputStream, java.io.OutputStream, java.io.Writer i java.io.Reader deoarece nu este compatibile cu acestea. Gsii o modalitate care s permit obiectelor RandomAccessFile s fie folosite cu aceste ierarhii. Ce ablon de proiectare considerai adecvat n acest caz? Realizai diagrama de clase UML i implementai clasele necesare.

159. Implementai un modul pentru validarea unor informaii folosind sume de control CRC32, Adler32, paritatea (folosind operaii XOR) i/sau alte metode. Iniial, validarea se realizeaz asupra unui vector de octei, dar se prevede extinderea pe viitor a acestei faciliti i pentru fiiere, informaii preluate din reea, etc. fr a modifica codul iniial (presupunem c acesta s-a pierdut sau c dup compilare clientul primete doar codul executabil). Ce ablon de proiectare considerai adecvat pentru a permite evoluia independent a interfeei i funcionalitii modulului? Realizai diagrama de clase UML i implementai clasele necesare. 160. Implementai o aplicaie pentru desenarea formelor geometrice simple (minim necesar: puncte, linii, elipse i dreptunghiuri). Aplicaia trebuie s permit urmtoarele operaii: crearea de forme geometrice (n funcie de preferina utilizatorului) gruparea anumitor forme geometrice pentru a fi modificate impreuna modificarea culorii unei forme sau grup de forme deplasarea unei forme sau grup de forme Aplicaia primeste comenzi pentru construirea imaginii finale. Comenzile pot fi: nume = punct(x, y) - creaza un punct cu pozitia x, y si numele nume nume = linie(x, y, w, h) - creeaza o linie cu pozitia x, y, lungime w pe axa Ox, lungime h pe axa Oy si numele nume nume = elipsa(x, y, w, h) - creeaza o elipsa cu pozitia x, y, lungime w pe axa Ox, lungime h pe axa Oy si numele nume nume = dreptunghi(x, y, w, h) - creeaza un drepunghi cu pozitia x, y, lungime w pe axa Ox, lungime h pe axa Oy si numele nume nume = grup(nume1, nume2, ...) - creeaza un grup cu numele nume compus din obiectele nume1, nume2, ... color(nume, val) - seteaza pentru obiectul nume culoarea val move(nume, x, y) - muta obiectul nume cu x pixeli la dreapta si y pixeli in jos (x si y pot fi negative) Ce ablon de proiectare considerai adecvat pentru implementarea operailor pe forme i grupuri de forme? Realizai diagrama de clase UML 17. Algebra liniara si geometrie analitica I 161. Spaiu vectorial: definiie, exemple, reguli de calcul ntr-un spaiu vectorial. 162. Fie V un spaiu vectorial peste corpul K i W1 , W2 dou subspaii n V. - Definii intersecia subspaiilor W1 i W2 . - Demonstrai c W1 W2 este subspaiu V. 163. Fie V un K spaiu vectorial, q N * fixat. Fie S = {v1 ,..., v q } cu {v1 ,..., v q } V un sistem de q vectori arbitrar alei din V i < S >= {v V | 1v1 + 2 v 2 + ... + q v q , 1 , 2 ,..., q K } -<S> este subspaiu vectorial al lui V; - S < S > .

164. Fie V un K- spaiu vectorial finit generat, B = {v1 ,..., v n } o baz n V i v V . Demonstrai c exist i sunt unici scalarii 1 , 2 ,..., n V astfel nct v =| 1v1 + 2 v 2 + ... + n v n . 165. Fie V i W dou K-spaii vectoriale finit dimensionale. Demonstrai c V W dac i numai dac V=W. 166. a) S se determine valorile parametrului real m pentru care B={(m,1,1),(1,m,1),(1,1,m+1)} este o baz n R 3 . b) Pentru m=2 verificai dac B este o baz i n caz afirmativ determinai coordonatele vectorului v=(-1,3,-4) in baza B. c) Verificai dac vectorul w=(2,-5,-1) aparine subspaiului generat de vectorii v1 =(2,1,1) i v2 =(1,2,1). 167. Fie W mulimea soluiilor sistemului x1 + 2 x 2 3x3 = 0 5 x1 3x 2 + x3 = 0 a. Artai c W este un subspaiu vectorial al lui R 3 . b.Determinai o baz a lui W. c. Precizai dim R V . 168. Fie f : R 3 R 3 , f ( x1 , x 2 , x3 ) = (4 x 2 , x1 4 x 2 , x1 2 x 2 2 x3 ). a.Demonstrai c f este morfism de spaii vectoriale. b. Determinai M B ( f ) , unde $B$ este baza canonic a lui R 3 . c.Fie B ' = {v1 = (1,1,0), v 2 = (1,0,1), v3 = (0,1,1)} Verificai c B' este baz n R 3 i determinai matricea M B ' ( f ) a lui f relativ la baza B'. 169. Se d funcia f : R 2 R 3 , f ( x1 , x 2 ) = ( x1 , x1 x 2 , x 2 ), ( x1 , x 2 ) R 2 . a. Artai c f este morfism de spaii vectoriale. b. Calculai Ker (f) i Im(f). c.Precizai rangul i defectul morfismului f. 170. Se d matricea 1 2 A= 3 2 M 2 ( R ). a. Scriei polinomul caracteristic asociat matricii A.

b. Determinai valorile proprii, subspaiile proprii i vectorii proprii corespunztori fiecrei valori proprii. c. Calculai multiplicittile algebrice i geometrice corespunztoare fiecrei valori proprii. d. Exist o baz a lui R 2 fa de care matricea A s aibe forma diagonal? Justificai rspunsul.

18. Combinatorica si Teoria Grafurilor

171. Definiti notiunile de: a) Drum si lant intr-un graf orientat; b) Subgraful generat de o submultime de varfuri, A X , al unui graf G = (X, U); c) Graful partial al unui graf G = (X, U) generat de o submultime de arce V U ; d) Componente tare conexe si componente conexe ale unui graf. e) Matrice de adiacenta, matricea drumurilor si matricea distantelor directe pentru un graf orientat. 172. Descrieti si demonstrati algoritmul Roy Warshall, de determinare a matricei drumurilor intr-un graf. 173. Descrieti si demonstrati algoritmul Roy Floyd, de determinare a drumurilor si distantelor minime intr-un graf. 174. Definiti oretea de transport, enuntati Teorema Ford-Fulkerson, definind toate notiunile care apar in enunt si descrieti algoritmul Ford Fulkerson. 175. Descrieti algoritmii lui Kruskal si Prim de determinare a arborelui minim pentru un graf conex. 176. Sa se determine matricea drumurilor si componentele tare conexe pentru graful care are matricea de adiacenta:
0 0 1 1 a := 0 0 0 0 1 0 1 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 1 1 0 1 0 0 0 1 0 1 0 1 1 0 0 1 0 1 1 0 1 1 0 1 0 0 0 0 0 1 0 0

177. Pentru ca o persoana ce are locuinta in punctul 1 sa mearga la biblioteca aflata in punctul El poate folosi mai multe mijloace de transport . Datele cuprinzand punctele intermediare prin care trece precum si timpul mediu calculat pentru a ajunge ditr-un punct in altul sun date in matricea distantelor directe data mai jos. Se cere sa se determine toate drumurile care realizeaza timpul minim cat si valoarea acestuia. 0 1 4 0 2 5 8 0 2 5 a := 0 3 5 0 1 0 178. Sa se determine lungimea maxima si toate drumurile pe care se realizeaza aceasta pentru graful care are matricea distantelor directe: 0 1 3 5 0 2 13 0 5 11 14 2 0 6 8 15 a := 0 3 9 0 2 6 0 4 0 179. In portul 1 se gasesc 35 vapoare care trbuie sa se deplaseze in portul 10. Deplasarea lor se face in etape astfel incat in prima etapa sa ajunga cat mai multe dintre ele in portul 10. In drumul lor vapoarele trebuie sa mai faca cate o escala in alte porturi intermediare, notate 2,3,...,9. Conditiile de primire, aprovizionare etc. Fac sa existe o limitare a rutelor folosite. Capacitatile corespunzatoare sunt date in matricea de mai jos:
0 a := 12 0 3 0 20 0 4 5 0 6 4 0 5 3 0 5 3 0 10 3 0 13 10 12 0

Pozitiile notate cu infinit indica aici ca nu avem arc intre varfurile respective. 180. Sa se determine arborele minim pentru graful care are matricea distantelor directe:
0 6 4 11 a := 5 10 9 13 6 0 4 5 7 5 8 10 4 4 0 6 3 3 4 6 11 5 6 0 9 2 7 6 5 7 3 9 0 12 2 3 10 5 3 2 12 0 11 7 9 8 4 7 2 11 0 3 13 10 6 6 3 7 3 0

19. Ecuaii difereniale 181. Ecuaii difereniale cu variabile separabile. 182. Sisteme difereniale liniare de ordinul I cu coeficieni constani. 183. Teorema de existen i unicitate a lui Picard. 184. Teorema de caracterizare a soluiilor saturate la dreapta. 185. Stabilitatea sistemelor diferen\c tiale. Teorema Poincar\'e-Liapunov. 186. Gsii soluia urmtoarei ecuaii difereniale reductibile la o ecuaie omogen: y' = 2x y . x + 2y 5

187. Gsii un factor integrant astfel nct urmtoarea ecuaie s devin o ecuaie cu diferenial total exact: (t sin( x ) + x cos( x )) dt + (t cos( x ) x sin( x )) dx = 0, i apoi rezolvai aceast ecuaie. 188. Gsii soluia general a urmtoarei ecuaii: x '' + 7 x ' + 10 x = te 2t cos5t. 189. S se arate c problema Cauchy y' = x y4, x 0 y (0) = 1; admite soluie unic definit pe [0, ). 190. Studiai stabilitatea soluiei banale pentru urmtorul sistem:

' 2 x = x + y ' 3 y = x 2 y.

20. Cercetri Operaionale 191. Caracteristicile modelului de ateptare cu o staie de servire, sosiri Poisson i timp de servire exponenial in cazul staionar. 192. Jocuri matriceale. Strategii minmax i maxmin. Extensia aleatoare a jocului. 193. Condiiile de optimalitate Kuhn-Tucker in programarea neliniar . 194. Metoda direciilor admisibile pentru programarea convex cu restricii liniare: testul de optimalitate si mbuntirea soluiei. 195. Metode de punct interior. Algoritmul de scalare afin pentru o problem de programare liniar. 196. Se consider problema de programare neliniar: Max( x1 , x 2 ) 2 cu restriciile: x1 + x 2 1 0 x + x 0 2 1 a) S se scrie funcia Lagrange asociat; b) S se scrie condiiile de optimalitate Kuhn-Tucker; c) S se calculeze soluia optim. 197. S se rezolve cu metoda multiplicatorilor lui Lagrange: Max(3x1 2 + 3x1 x 2 4 x 2 2 + 2 x 2 x3 1.5 x3 2 ) x1 + 2 x 2 x3 = 2 x x + 3x = 3 2 3 1

198. S se determine punctele de extrem ale funciei f(x,y)= x3+y3+3xy 199. S se rezolve: 3 3 Inf ( x1 + x 2 12 x1 3 x 2 ) cu restriciile: x 2 x1 + 1 x1 0. 200. Se consider un fenomen de ateptare n care sosirile sunt poissoniene iar serviciile sunt exponeniale. Durata medie dintre dou sosiri consecutive este de 2 minute. Numrul mediu de serviri este de 4 pe minut. S se determine numrul

mediu de clieni aflai in sistem, numrul mediu de clieni din firul de ateptare, durata medie de ateptare in firul de ateptare tf , durata medie de ateptare in sistem ts , probabilitatea ca numrul clienilor din sistem s nu depeasc 3 i probabilitatea ca un client s nu atepte.

You might also like