Sunteți pe pagina 1din 3

Ministerul Educaiei Naionale i Cercetrii tiinifice

Centrul Naional de Evaluare i Examinare

Examenul de bacalaureat naional 2016


Proba E. d)
Informatic
Limbajul C/C++
Varianta 4

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. Variabilele x, y i z sunt de tip ntreg i memoreaz numere naturale din intervalul
[1,103]. Indicai o expresie C/C++ care are valoarea 1 dac i numai dac valoarea
variabilei x este strict mai mare dect valoarea oricreia dintre variabilele y i z. (4p.)
a. x*y>y*z && x*z>y*z b. x*z>x*y && y*z>y*x
c. y*z>x*z && y*x>z*x d. y*z>y*x && y*z>z*x

2. Se consider algoritmul alturat, reprezentat citete n


n pseudocod. (numr natural nenul)
S-a notat cu a%b restul mpririi numrului natural a k 1
la numrul natural nenul b i cu [c] partea ntreag m 1
a numrului real c. ct timp n>9 execut
dac n%10=[n/10]%10 atunci
a) Scriei valoarea afiat n urma executrii k k+1
algoritmului dac se citete numrul dac k>m atunci
81112337. (6p.) m k
b) Scriei numrul de valori din intervalul
[10000,99999] care s nceap cu cifra 1, altfel
care pot fi citite pentru variabila n, astfel nct, k 1
n urma executrii algoritmului, pentru fiecare
dintre acestea, s se afieze valoarea 4. (4p.) n [n/10]

scrie m
c) Scriei n pseudocod un algoritm echivalent cu cel dat, nlocuind structura ct
timp...execut cu o structur repetitiv de alt tip. (6p.)
d) Scriei programul C/C++ corespunztor algoritmului dat. (10p.)

Prob scris la informatic Varianta 4


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 i Cercetrii tiinifice
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. Variabilele i i j sunt de tip ntreg, iar variabila m memoreaz un tablou bidimensional cu 5
linii i 5 coloane, numerotate de la 0 la 4, cu elemente numere ntregi.
O expresie C/C++ a crei valoare este egal cu produsul dintre primul element de pe linia i
i ultimul element de pe coloana j din acest tablou este: (4p.)
a. m[0,i]*m[j,4] b. m(0,i)*m(j,4)
c. m(i)(0)*m(4)(j) d. m[i][0]*m[4][j]
2. Un graf orientat are 12 arce, 3 componente tare conexe, iar fiecare vrf al su are gradul
interior un numr nenul. Numrul maxim de noduri pe care le poate avea graful este: (4p.)
a. 12 b. 11 c. 9 d. 8

Scriei pe foaia de examen rspunsul pentru fiecare dintre cerinele urmtoare.


3. Un arbore cu 8 noduri, numerotate de la 1 la 8, este reprezentat prin urmtorul vector de
tai (3, 0, 2, 5, 2, 5, 1, 5). Determinai cel mai lung lan elementar care are o extremitate
n rdcin i enumerai nodurile sale, n ordinea apariiei n acesta. (6p.)
4. Variabilele i i s sunt ntregi, iar variabila p struct parcare
memoreaz, pentru fiecare dintre cele 20 de { int nrLocuriInchiriate;
zone de parcare ale unui ora, numrul de int pretOra;
locuri nchiriate pe parcursul orei curente, } p[20];
precum i preul practicat de zona respectiv
pentru nchirierea unui loc pentru o or.
Fr a utiliza alte variabile dect cele menionate, scriei o secven de instruciuni n urma
executrii creia variabila s s memoreze suma total obinut n urma nchirierii locurilor
de parcare din ora pe parcursul orei curente. (6p.)
5. Scriei un program C/C++ care citete de la tastatur, n aceast ordine, un numr natural
n, apoi n cuvinte, separate prin Enter, urmate de un numr natural k. Numerele citite sunt
din intervalul [1,20], iar fiecare cuvnt este format din cel mult 20 de caractere, numai
litere mici ale alfabetului englez. Cel puin unul dintre cuvinte are k litere. Programul
construiete n memorie, apoi afieaz pe ecran, un ir care s cuprind cuvintele citite,
separate prin cte un spaiu, astfel nct toate cele care au k litere s ocupe primele poziii,
iar celelalte s se regseasc n continuarea acestora, ntr-o ordine oarecare.
Exemplu: dac se citesc, n aceast ordine, datele alturate, unul dintre 5
irurile obinute poate fi: am
am un de cires mai un
(10p.) cires
de
mai
2

Prob scris la informatic Varianta 4


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 i Cercetrii tiinifice
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. Subprogramul f este definit alturat. void f(int n, int p)
Indicai cea mai mare valoare din { if(n>0)
intervalul [20,25] pe care o poate { if(n%2==1)
avea variabila ntreag x, astfel nct, cout<<p<<" "; | printf(" ",p);
n urma apelului de mai jos, s se f(n/2, p*2);
afieze numerele 2 4 16. }
}
f(x,1); (4p.)
a. 21 b. 22 c. 23 d. 24

Scriei pe foaia de examen rspunsul pentru fiecare dintre cerinele urmtoare.


2. Utiliznd metoda backtracking se genereaz, n ordine lexicografic, toate irurile de cte 6
cifre din mulimea {0,1} cu proprietatea c au cel mult dou cifre cu valori egale pe poziii
consecutive. Primele 5 soluii generate sunt, n aceast ordine: 001001, 001010, 001011,
001100, 001101. Scriei a 7-a i a 8-a soluie, n ordinea generrii acestora. (6p.)
3. Subprogramul minDivPrim are un singur parametru, n, prin care primete un numr
natural (n [2,109]). Subprogramul returneaz cel mai mic numr natural care are
aceiai divizori primi ca n.
Scriei definiia complet a subprogramului.
Exemplu: dac n=75, subprogramul returneaz numrul 15, iar dac n=7, subprogramul
returneaz numrul 7. (10p.)
4. Se consider irul 1, -1, 2 ... definit astfel: f1=1, f2=-1, iar fn=1-2fn-1-fn-2, dac
n3 (unde n este un numr natural).
Se citete de la tastatur un numr natural, n (n [1,109]), i se cere s se scrie n
fiierul text bac.out, separai prin cte un spaiu, primii n termeni ai irului, n ordine
invers apariiei lor n acesta.
Pentru determinarea i afiarea numerelor cerute se utilizeaz un algoritm eficient din
punctul de vedere al spaiului de memorie i al timpului de executare.
Exemplu: dac n=3, fiierul conine valorile
2 -1 1
a) Descriei n limbaj natural algoritmul utilizat, justificnd eficiena acestuia. (4p.)
b) Scriei programul C/C++ corespunztor algoritmului descris. (6p.)

Prob scris la informatic Varianta 4


Limbajul C/C++
Filiera teoretic, profilul real, specializrile: matematic-informatic, matematic-informatic intensiv informatic
Filiera vocaional, profilul militar, specializarea matematic-informatic
3

S-ar putea să vă placă și