Sunteți pe pagina 1din 3

Ministerul Educaiei Naionale Centrul Naional de Evaluare i Examinare

Examenul de bacalaureat naional 2014 Proba E. d) Informatic Limbajul C/C++ MODEL Filiera teoretic, profilul real, specializrile: matematic-informatic matematic-informatic intensiv informatic Filiera vocaional, profilul militar, specializarea matematic-informatic 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. a. c. Indicai expresia care are valoarea 1 dac i numai dac numrul natural memorat n variabila ntreag x are exact trei cifre. (4p.) x/1000==0 && x>99 x%1000==0 && x<1000 b. d. x/1000==0 || x<1000 x%1000==0 || x>99

2. Se consider algoritmul alturat, reprezentat n pseudocod. S-a notat cu x%y restul mpririi numrului natural x la numrul natural nenul y i cu [z] partea ntreag a numrului real z. a) Scriei numrul pentru variabila valoarea 20, variabila b valoarea 35. afiat dac a se citete iar pentru se citete (6p.)

citete a,b (numere naturale nenule, ab) nr 0 i a repet x i ct timp x>9 i 1+x%10=[x/10]%10 execut x [x/10] dac x<10 atunci nr nr+1 i i+1 pn cnd i>b scrie nr

b)

Dac pentru variabila a se citete valoarea 1000, scriei cel mai mare numr de patru cifre care poate fi citit pentru variabila b astfel nct, n urma executrii algoritmului, valoarea afiat s fie 5. (4p.) Scriei n pseudocod un algoritm, echivalent cu cel dat, n care s se nlocuiasc structura repet...pn cnd cu o structur repetitiv de tip pentru...execut. (6p.) Scriei programul C/C++ corespunztor algoritmului dat. (10p.)

c) d)

Prob scris la informatic Limbajul C/C++ 1

MODEL

Filiera teoretic, profilul real, specializrile: matematic-informatic, matematic-informatic intensiv informatic Filiera vocaional, profilul militar, specializarea matematic-informatic

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. Variabila a memoreaz elementele unui tablou bidimensional cu 100 de linii i 100 de coloane, numerotate de la 0 la 99. n limbajul C/C++ un element aflat pe linia 21 i coloana 50 a tabloului poate fi accesat prin: (4p.) a(50,21) b. a(50)(21) c. a[21;50] d. a[21][50] ntr-un arbore cu rdcin considerm c un nod se afl pe nivelul x dac lanul elementar care are o extremitate n nodul respectiv i cealalt extremitate n rdcina arborelui are lungimea x. Pe nivelul 0 se afl un singur nod (rdcina). Se consider un arbore cu rdcin, cu cinci niveluri. Toate nodurile de pe acelai nivel (cu excepia ultimului nivel) au un numr egal (nenul) de descendeni direci (fii) i nu exist dou niveluri cu acelai numr de noduri. Numrul minim de noduri de pe nivelul 4 este:(4p.) 4 b. 9 c. 16 d. 18

a. 2.

a.

Scriei pe foaia de examen rspunsul pentru fiecare dintre cerinele urmtoare. 3. Se consider declararea alturat. Scriei o secven de struct numar { int v; instruciuni n urma executrii creia cmpul mii al variabilei x char mii; s memoreze litera M, dac numrul memorat n cmpul v al } x; acesteia este strict mai mare dect 999, sau litera A altfel.(6p.) Scriei toate ciclurile elementare distincte ale unui graf neorientat cu 6 noduri, numerotate de la 1 la 6, i muchiile [1,2], [1,4], [1,5], [2,3], [2,4], [3,4], [4,6]. Dou cicluri se consider distincte dac ele difer prin cel puin o muchie. (6p.) Se consider un text cu cel mult 100 de caractere (litere mici ale alfabetului englez i spaii), n care cuvintele sunt separate prin unul sau mai multe spaii. Scriei un program C/C++ care citete de la tastatur un text de tipul menionat mai sus i determin transformarea acestuia n memorie prin eliminarea unor vocale, astfel nct n niciun cuvnt din text s nu existe dou vocale pe poziii alturate. Programul afieaz pe ecran textul obinut. Se consider vocale literele a, e, i, o, u. Exemplu: pentru textul oaia aceea e foarte blanda se poate obine textul o ace e forte blanda iar pentru textul ea e o oaie se poate obine textul e e o o (10p.)

4.

5.

Prob scris la informatic Limbajul C/C++ 2

MODEL

Filiera teoretic, profilul real, specializrile: matematic-informatic, matematic-informatic intensiv informatic Filiera vocaional, profilul militar, specializarea matematic-informatic

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. Se consider subprogramele f1 i f2, definite mai jos. long f1 (int n) { if(n<10) return n*f1(n+1); return 10; } long f2 (int n) { if(n>1) return n*f2(n-1); return 1; }

a.

Identificai subprogramul care, la apel, pentru parametrul n=10, returneaz produsul primelor 10 numere naturale nenule. (4p.) b. numai f1 c. numai f2 d. nici f1, nici f2 att f1, ct i f2

Scriei pe foaia de examen rspunsul pentru fiecare dintre cerinele urmtoare. 2. Alfabetul Morse este format doar din simbolurile linie (notat cu -) i punct (notat cu ). Utiliznd metoda bactracking se genereaz toate cuvintele scrise n alfabetul Morse, formate din cte 5 simboluri, care ncep i se termin cu punct. Primele patru soluii generate sunt, n aceast ordine: - - - - - - - - Scriei cea de a cincea i cea de a asea soluie, n ordinea generrii acestora. (6p.) Se consider subprogramul divizor, cu doi parametri: n, prin care primete un numr natural cu cel mult nou cifre (n>1); d, prin care furnizeaz cel mai mare divizor prim al lui n. Scriei definiia complet a subprogramului. Exemplu: pentru n=50, dup apel d=5, iar pentru n=11, dup apel d=11.

3.

(10p.)

4.

Fiierul bac.txt conine pe prima linie un numr natural par n cu cel mult patru cifre, iar pe urmtoarea linie un ir de n numere naturale cu cel mult nou cifre. Numerele din ir sunt n ordine descresctoare i sunt separate prin cte un spaiu. Se cere s se afieze pe ecran cel mai mic numr din prima jumtate a irului care s fie strict mai mare dect oricare numr din a doua jumtate a irului. Dac n fiier nu se afl o astfel de valoare, pe ecran se afieaz mesajul Nu exista. Pentru determinarea numrului cerut se utilizeaz un algoritm eficient din punctul de vedere al memoriei i al timpului de executare. Exemplu: dac fiierul bac.txt are coninutul 30 16 8 7 7 ... 7 7 2 1 de 26 de ori atunci pe ecran se afieaz 8, iar dac fiierul are coninutul 6 7 7 7 7 2 1 atunci pe ecran se afieaz Nu exista. a) Descriei n limbaj natural algoritmul utilizat, justificnd eficiena acestuia. (4p.) b) Scriei programul C/C++ corespunztor algoritmului descris. (6p.)

Prob scris la informatic Limbajul C/C++ 3

MODEL

Filiera teoretic, profilul real, specializrile: matematic-informatic, matematic-informatic intensiv informatic Filiera vocaional, profilul militar, specializarea matematic-informatic