Sunteți pe pagina 1din 1

Programare procedural Test de laborator

16 ianuarie 2015 semigrupa 1041


Enun
La scoala X, un grup de n copii joaca un joc numit "matematica distractiva". Un coordonator
de joc enunta o regula (R1), iar copii isi aleg un triplet de numere naturale. Aceste activitati se
desfasoara concomitent, astfel ca nici copiii nu stiu apriori regula (R1), nici coordonatorul nu stie
numerele alese de copii. In prima etapa sunt eliminati din joc acei copii pentru care tripletul ales nu
respecta R1. In a doua etapa a jocului, cei ramasi primesc o a doua regula (R2), in urma careia
raman finalistii. Ultima cerinta (R3) va stabili castigatorii jocului.
Fie R1 = "Nr. format prin concatenarea celor trei componente ale tripletului este numar deal".
R2 = "Cel mai mic numar care se poate obtine din cifrele distincte ale tripletului este impar".
R3 = "Eliminati cifra maxima din numarul initial cerut in R1."
Ajutati coordonatorul de joc astfel
1. Dupa enuntarea regulii R1, sa aiba lista tuturor copiilor care raman in joc (nume, prenume,
clasa, numarul obtinut), ordonati lexicografic.
2. Lista tuturor finalistilor (al caror triplet respecta R2) grupati dupa clasa din care fac parte.
3. Cele mai mici trei numere obtinute prin regula R3, precum si "posesorii" lor.
Exemplu:
Date de intrare:
Popescu Vasile, 2A, 10, 10, 2003
Alexe Maria, 3B, 5, 10, 1900
Popescu Ioana, 3C, 27, 8, 983
Ionescu Robert, 3B, 4, 6, 752
Neacsu Andrei, 2A, 7, 8, 4210
Ionescu Andreea, 3C, 6, 7, 987
Popa Lucian, 2A, 6, 9, 1910
Manea Laura, 2D, 9, 10, 1875
Vasile Simona, 2A, 7, 8, 983
Manea Diana, 2D, 3, 5, 431
Timaru Miruna, 2D, 1, 23, 620
Rezultate c): Manea Diana, 2D, 3431

Rezultate a):
Ionescu Andreea, 3C, 67987
Ionescu Robert, 3B, 46752
Manea Diana, 2D, 35431
Neacsu Andrei, 2A, 784210
Popescu Ioana, 3C, 278983
Timaru Miruna, 2D, 123620
Vasile Simona, 2A, 78983

Ionescu Robert, 3B, 4652

Rezultate b):
Popescu Ioana, 3C, 23789
Ionescu Robert, 3B, 24567
Ionescu Andreea, 3C, 6789
Vasile Simona, 2A, 3789
Manea Diana, 2D, 1345

Ionescu Andreea, 3C, 6787.

Precizri
1. Timpul de lucru este de 90 de minute.
2. La sfaritul timpului de lucru, studenii vor salva pe stick-ul de memorie al profesorului supraveghetor
fiierul surs cu extensia .c. Acesta trebuie s conin pe primul rnd un comentariu cu numele i
prenumele studentului, grupa i compilatorul folosit.
3. Sursa predat trebuie s compileze. Sursele care au erori de compilare nu vor fi luate n
considerare. nainte de predarea surselor, studenii vor pune n comentariu eventualele pri din
program care au erori de compilare sau nu funcioneaz corespunztor.
4. n implementarea programului se vor utiliza ct mai multe dintre noiunile de programare, care au
fost studiate pe parcursul semestrului i care se potrivesc cerinelor din enun.
5. Condiiile minimale de promovare a testului sunt ca programul s citeasc informaiile elevilor, s le
memoreze i apoi s le afieze conform primei cerine.
6. Orice tentativ de fraud se va pedepsi conform regulamentelor Universitii.
Baremul de evaluare
1. Se acord 5 puncte pentru respectarea condiiile minimale, precizate mai sus.
2. Se acord cte 1.5 puncte pentru rezolvarea corect a cerinelor 2 i 3 din enun.
3. Se acord pn la 1 punct pentru utilizarea corect a subprogramelor (utilizare parial a
subprogramelor implic punctaj parial).
4. Se acord 1 punct pentru utilizarea corect a fiierelor (0.5 input / 0.5 output).
5. Se acord pn la 1 punct pentru folosirea cu sens a alocrii dinamice.
6. Se acord pn la 1 punct pentru folosirea corect a pointerilor.
7. Se acord un bonus de 0.5 puncte pentru o soluie de proiectare deosebit.

8. Se scad ntre 1 i 2 puncte pentru utilizarea variabilelor globale.


9. Se scade pn la 1 punct pentru bug-uri minore de funcionare.
Observaii de evaluare
1. Dac sunt respectate condiiile minimale, nota nu poate scdea sub 5.
2. Nota maxim este 12.5.