Sunteți pe pagina 1din 3

Ministerul Educaiei i Cercetrii tiinifice

Centrul Naional de Evaluare i Examinare

Examenul de bacalaureat naional 2015


Proba E. d)
Informatic
Limbajul C/C++
Varianta 5
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.

Expresia C/C++ alturat are valoarea:


4

b.

4+5%7*2

(4p.)
c.

2. Se consider algoritmul alturat, reprezentat n


pseudocod.
S-a notat cu a%b restul mpririi numrului natural a la numrul
natural nenul b i cu [c] partea ntreag a numrului real c.
a)

Scriei valoarea afiat dac se citesc, n aceast ordine,


numerele 997 i 1005.
(6p.)

b)

Dac pentru m se citete numrul 54321, scriei cel mai


mare numr care poate fi citit pentru n astfel nct, n urma
executrii algoritmului, valoarea afiat s fie 0.
(4p.)

c)

Scriei n pseudocod un algoritm, echivalent cu cel dat,


nlocuind structura pentru...execut cu o structur de
tip ct timp...execut.
(6p.)

d)

Scriei programul C/C++ corespunztor algoritmului dat.


(10p.)

d.

14

citete m,n
(numere naturale, mn)
nr 0
pentru x m,n execut
y 0
z x
repet
y y*10+z%10
z [z/10]
pn cnd z=0
dac x=y atunci
nr nr+1

scrie nr

Prob scris la informatic


Varianta 5
Limbajul C/C++
Filiera teoretic, profilul real, specializrile: matematic-informatic, matematic-informatic intensiv informatic
Filiera vocaional, profilul militar, specializarea matematic-informatic
Pagina 1 din 3

Ministerul Educaiei 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.

n declarrile alturate, variabilele A i B memoreaz struct punct


coordonatele cte unui punct n sistemul de coordonate { int x,y;
xOy. Indicai expresia care are valoarea 1 dac i numai }A,B;
dac cele dou puncte coincid.
(4p.)

a.

A[x]==B[x] && A[y]==B[y]

b.

A.x==B.x && A.y==B.y

c.

x[A]==x[B] && y[A]==y[B]

d.

x.A==x.B && y.A==y.B

2.

a.

Un graf orientat cu 5 vrfuri, numerotate de la 1 la 5, este


reprezentat alturat. Numrul maxim de arce care se pot
elimina, astfel nct graful parial obinut s fie tare conex
este:
(4p.)

b.

c.

d.

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 vectorul de tai


(4,4,0,3,6,3,2,7). Scriei un lan elementar care are o extremitate n rdcina
arborelui i cealalt extremitate n una dintre frunzele acestuia.
(6p.)

4.

Variabilele i i j sunt de tip ntreg, iar variabila a memoreaz un tablou bidimensional


cu 5 linii i 5 coloane, numerotate de la 1 la 5, avnd iniial toate elementele nule.
Fr a utiliza alte variabile dect cele menionate, scriei secvena de 1 0 1 0 1
instruciuni de mai jos, nlocuind punctele de suspensie astfel nct, n 0 1 0 1 0
urma executrii secvenei obinute, variabila a s memoreze tabloul 1 0 1 0 1
0 1 0 1 0
alturat.
1 0 1 0 1
for(i=1;i<=5;i++)
for(j=1;j<=5;j++)
..................
(6p.)

5.

Se consider un text cu cel mult 100 de caractere, n care cuvintele sunt formate numai
din litere mari i mici ale alfabetului englez i sunt separate prin cte un spaiu. Textul
reprezint numele unei instituii sau al unei organizaii.
Scriei un program C/C++ care citete de la tastatur un text de tipul precizat i construiete
n memorie, apoi afieaz pe ecran, un ir de caractere ce reprezint acronimul
corespunztor numelui citit. Acronimul este format din primul caracter al fiecrui cuvnt al
numelui care ncepe cu majuscul.
Exemplu: dac irul citit este
Universitatea de Arte Plastice BUCURESTI
se va obine irul
UAPB
(10p.)

Prob scris la informatic


Varianta 5
Limbajul C/C++
Filiera teoretic, profilul real, specializrile: matematic-informatic, matematic-informatic intensiv informatic
Filiera vocaional, profilul militar, specializarea matematic-informatic
Pagina 2 din 3

Ministerul Educaiei 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.

Utiliznd metoda backtracking, se genereaz toate iragurile formate din cte 5 pietre
distincte din mulimea {opal, rubin, safir, smarald, topaz}. Dou iraguri sunt
distincte dac pietrele sunt dispuse n alt ordine. Primele patru soluii obinute sunt, n
aceast ordine: (opal, rubin, safir, smarald, topaz), (opal, rubin, safir, topaz,
smarald), (opal, rubin, smarald, safir, topaz) i (opal, rubin, smarald, topaz,
safir). Indicai soluia care trebuie eliminat din enumerarea urmtoare, astfel nct cele
rmase s apar n ordinea generrii lor, pe poziii consecutive: (smarald, safir, opal,
topaz, rubin) (smarald, safir, topaz, opal, rubin) (smarald, safir, topaz,
rubin, opal) (smarald, topaz, opal, rubin, safir).
(4p.)

a.

(smarald, safir, opal, topaz, rubin)

b.

(smarald, safir, topaz, opal, rubin)

c.

(smarald, safir, topaz, rubin, opal)

d.

(smarald, topaz, opal, rubin, safir)

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


2.

Subprogramul F este definit alturat. void F (long a, int b)


Scriei ce se afieaz n urma apelului { if(a*b!=0)
if(a%2==0)
de mai jos.
{ cout<<a%10; | printf(%d,a%10);
F(154678,3);
F(a/10,b-1);
(6p.)
}
else
{ F(a/10,b+1);
cout<<a%10; | printf(%d,a%10);
}
}

3.

Subprogramul DivImpar are doi parametri, a i b, prin care primete dou numere
naturale din intervalul [1,105]. Subprogramul returneaz cel mai mare divizor comun
impar al numerelor a i b.
Scriei definiia complet a subprogramului.
Exemplu: dac a=30 i b=60, subprogramul returneaz valoarea 15.
(10p.)

4.

Fiierul date.in conine un ir de cel mult un milion de numere naturale din intervalul
[0,109], separate prin cte un spaiu. irul are cel puin doi termeni pari i cel puin doi
termeni impari.
Se cere s se afieze pe ecran mesajul DA dac irul aflat n fiier are un subir ordonat
cresctor, format din toi termenii pari ai si, i un subir ordonat descresctor, format din
toi termenii impari ai si. Dac nu exist dou astfel de subiruri, programul afieaz pe
ecran mesajul NU. Pentru verificarea proprietii cerute utilizai un algoritm eficient din
punctul de vedere al timpului de executare i al memoriei necesare.
Exemplu: dac fiierul date.in conine numerele
7 2 5 2 4 3 8
se afieaz pe ecran mesajul
DA
iar dac fiierul conine numerele
5 2 7 2 4 3 8
se afieaz pe ecran mesajul
NU
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 5
Limbajul C/C++
Filiera teoretic, profilul real, specializrile: matematic-informatic, matematic-informatic intensiv informatic
Filiera vocaional, profilul militar, specializarea matematic-informatic
Pagina 3 din 3