Toate subiectele sunt obligatorii. Se acord 10 puncte din oficiu.
Timpul de lucru efectiv este de 3 ore. n rezolvrile cerute, identificatorii utilizai trebuie s respecte precizrile din enun (bold), iar n lipsa unor precizri explicite, notaiile trebuie s corespund cu semnificaiile asociate acestora (eventual n form prescurtat). n programele cerute, datele de intrare se consider corecte, validarea acestora nefiind necesar.
SUBIECTUL I (30 de puncte)
Pentru itemul 1, scriei pe foaia de examen litera corespunztoare rspunsului corect. 1. Variabila x este de tip ntreg i poate memora un numr natural cu cel mult dou x%7 cifre. Valoarea maxim pe care o poate avea expresia C/C++ alturat este: (4p.) a. 6 b. 14.14 c. 93 d. 693
2. Se consider algoritmul alturat, reprezentat n n 0
pseudocod. repet citete x a) Scriei valoarea afiat dac se citesc, n aceast ordine, numerele 10, 8, 11, 1, 21, 0. (numr natural) a 0 (6p.) b 1 b) Scriei un set de patru numere distincte din repet intervalul [0,9] care pot fi citite astfel nct, n c a+b urma executrii algoritmului, s se afieze a b valoarea 0. (4p.) b c c) Scriei n pseudocod un algoritm, echivalent cu pn cnd cx cel dat, n care s se nlocuiasc prima dac x=c atunci structur repet...pn cnd cu o n n+1 structur repetitiv cu test iniial. (6p.) pn cnd x=0 scrie n d) Scriei programul C/C++ corespunztor algoritmului dat. (10p.)
Prob scris la informatic Varianta 10
Limbajul C/C++ Filiera teoretic, profilul real, specializrile: matematic-informatic, matematic-informatic intensiv informatic Filiera vocaional, profilul militar, specializarea matematic-informatic 1 Ministerul Educaiei Naionale Centrul Naional de Evaluare i Examinare
SUBIECTUL al II-lea (30 de puncte)
Pentru fiecare dintre itemii 1 i 2 scriei pe foaia de examen litera corespunztoare rspunsului corect. 1. Un arbore cu 4 noduri, numerotate de la 1 la 4, NU poate fi reprezentat prin vectorul de tai: (4p.) a. (0,1,2,3) b. (2,1,0,3) c. (4,4,4,0) d. (2,3,4,0) 2. Se consider un graf neorientat complet, cu 9 noduri. Pentru a obine un graf parial al su cu dou componente conexe, fiecare dintre acestea fiind grafuri complete, numrul maxim de muchii care pot fi eliminate este: (4p.) a. 14 b. 18 c. 20 d. 24
Scriei pe foaia de examen rspunsul pentru fiecare dintre cerinele urmtoare.
3. Se consider graful orientat cu 6 vrfuri, numerotate de la 1 la 6, 0 0 0 0 1 0 reprezentat prin matricea de adiacen alturat. Scriei un drum 1 0 0 1 0 1 elementar din graf, cu extremitatea iniial n vrful 4 i extremitatea 0 0 0 0 1 0 final n vrful 6. (6p.) 1 0 0 0 1 0 0 1 0 0 0 0 0 0 0 0 1 0 4. Variabila s poate memora un ir cu maximum 20 de caractere, iar variabila i este de tip ntreg. Scriei ce se afieaz n urma executrii secvenei de instruciuni de mai jos. strcpy(s,"BACALAUREAT"); cout<<strlen(s); | printf("%d",strlen(s)); i=0; while (i<strlen(s)-1) { if(strchr("EAIOU",s[i])!=NULL) strcpy(s+i+1,s+i+2); i++; } cout<<s; | printf("%s",s); (6p.) 5. Scriei un program C/C++ care citete de la tastatur dou numere naturale, m i n (2m20, 2n20), i construiete n memorie un tablou bidimensional A, cu m linii i n coloane, astfel nct parcurgndu-l linie cu linie, de sus n jos, i fiecare linie de la stnga la dreapta, s se obin irul primelor nm numere naturale, pare, care NU sunt divizibile cu 5, ordonat strict cresctor. Programul afieaz pe ecran tabloul obinut, fiecare linie a tabloului pe cte o linie a ecranului, elementele de pe aceeai linie fiind separate prin cte un spaiu. Exemplu: pentru m=4 i n=3 se obine tabloul alturat. 2 4 6 (10p.) 8 12 14 16 18 22 24 26 28
Prob scris la informatic Varianta 10
Limbajul C/C++ Filiera teoretic, profilul real, specializrile: matematic-informatic, matematic-informatic intensiv informatic Filiera vocaional, profilul militar, specializarea matematic-informatic 2 Ministerul Educaiei Naionale Centrul Naional de Evaluare i Examinare
SUBIECTUL al III-lea (30 de puncte)
Pentru itemul 1, scriei pe foaia de examen litera corespunztoare rspunsului corect. 1. Utiliznd metoda backtracking, se genereaz toate posibilitile de a forma succesiuni de cte 5 genuri muzicale distincte din mulimea {jazz, rock, latino, house, pop}, astfel nct n fiecare succesiune genul latino precede genul house. Dou succesiuni sunt distincte dac genurile muzicale sunt n alt ordine. Primele cinci soluii generate sunt, n aceast ordine, (jazz, rock, latino, house, pop), (jazz, rock, latino, pop, house), (jazz, rock, pop, latino, house), (jazz, latino, rock, house, pop), (jazz, latino, rock, pop, house). Imediat nainte de (pop, latino, house, jazz, rock) este generat soluia: (4p.) a. (rock, jazz, house, latino, pop) b. (rock, jazz, latino, house, pop)
c. (pop, latino, rock, house, jazz) d. (pop, rock, latino, house, jazz)
Scriei pe foaia de examen rspunsul pentru fiecare dintre cerinele urmtoare.
2. Se consider subprogramul f, definit int f(int a,int b) alturat. Scriei dou valori naturale distincte { if (b==0) return a; din intervalul [1,50] pe care le poate avea else return f(b,a%b); variabila ntreag x, astfel nct f(30,x) s } aib valoarea 5. (6p.) 3. Se consider subprogramul triplete, cu un singur parametru, n, prin care primete o valoare natural din intervalul [2,104]. Subprogramul afieaz pe ecran toate tripletele de numere naturale (x, y, z) cu proprietatea c x<y<z i xy+yz=n. Fiecare triplet se afieaz pe cte o linie a ecranului, iar numerele din fiecare triplet sunt separate prin cte o virgul i ncadrate ntre paranteze rotunde, ca n exemplu. Scriei definiia complet a subprogramului. Exemplu: pentru n=8 se afieaz pe ecran, nu neaprat n aceast ordine, tripletele: (0,1,8) (0,2,4) (1,2,3) (10p.) 4. Fiierul bac.txt conine pe prima linie un numr natural n (1n106), iar pe a doua linie cel mult 1000000 de numere naturale de forma 10p (0p9), separate prin cte un spaiu. Se cere s se afieze pe ecran numrul care ar aprea pe poziia n n irul ordonat cresctor obinut din toate numerele aflate pe a doua linie a fiierului. Dac irul are mai puin de n termeni, se afieaz pe ecran mesajul Nu exista. Pentru determinarea numrului cerut se utilizeaz un algoritm eficient din punctul de vedere al timpului de executare. Exemplu: dac fiierul bac.txt conine numerele 5 100 100000 1 100000 1000 100 10 atunci pe ecran se afieaz valoarea 1000 a) Descriei n limbaj natural algoritmul utilizat, justificnd eficiena acestuia. (4p.) b) Scriei programul C/C++ corespunztor algoritmului descris. (6p.)