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 9
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 i y sunt de tip real. Expresia C/C++ alturat este !(x>0 && y>0)
echivalent cu expresia:
(4p.)

a.

x<=0 || y<=0

b.

x<=0 && y<=0

c.

x>0 || y>0

d.

!(x>0) && !(y>0)

citete n
(numr natural nenul)
p 0
pentru i 1,n execut
m i
ct timp m%2=0 execut
Scriei valoarea afiat n urma m [m/2]
executrii algoritmului dac se citete
numrul 12.
(6p.) dac m=1 atunci
Scriei cel mai mic i cel mai mare p i
numr care pot fi citite, astfel nct,
pentru fiecare dintre acestea, valoarea
afiat s fie 16.
(4p.) scrie p

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)

b)

c)

Scriei n pseudocod un algoritm echivalent cu cel


pentru...execut cu o structur repetitiv cu test final.

d)

Scriei programul C/C++ corespunztor algoritmului dat.

Prob scris la informatic


Limbajul C/C++

dat,

nlocuind

structura
(6p.)
(10p.)

Varianta 9

Filiera teoretic, profilul real, specializrile: matematic-informatic, matematic-informatic intensiv informatic


Filiera vocaional, profilul militar, specializarea matematic-informatic

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.

n declararea alturat, cmpurile x i y ale nregistrrii struct fractie {


int x,y;
reprezint numrtorul, respectiv numitorul unei fracii. Indicai o
}
f;
expresie C/C++ care are valoarea 1 dac i numai dac fracia
memorat n variabila f are valoarea 1.
(4p.)

a.

(int x).f==(int y).f

b.

x.f.fractie==y.f.fractie

c.

f.x==f.y

d.

x.y==y.x

2.
a.

Matricea de adiacen a unui graf neorientat cu 7 noduri are 10 elemente nenule. Numrul
maxim de componente conexe ale grafului este:
(4p.)
2

b.

c.

d.

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


3.

n secvena de instruciuni de mai jos variabilele s1 i s2 memoreaz cte un ir cu cel


mult 20 de caractere. Scriei ce se afieaz pe ecran n urma executrii secvenei.
strcpy(s1,bacalaureat);
cout<<strlen(s1); | printf(%d,strlen(s1));
strcpy(s2,s1+5); s2[3]=\0;
cout<<s2; | printf(%s,s2);
(6p.)

4.

ntr-un graf orientat cu 7 vrfuri, numerotate de la 1 la 7, pentru oricare dou vrfuri ale
sale i i j exist arcul (i,j) fie dac j este divizor al lui i (i
j), fie dac i i j au
aceeai paritate, iar i<j. Enumerai vrfurile pentru care gradul interior este mai mare sau
egal cu cel exterior.
(6p.)

5.

Scriei un program C/C++ care citete de la tastatur numere naturale din intervalul
[3,102], n aceast ordine: n i m, apoi elementele unui tablou bidimensional cu n linii i m
coloane, iar la final un numr x.
Programul afieaz pe ecran mesajul DA, dac exist cel puin un
element egal cu x aflat pe conturul tabloului (format din prima linie,
ultima linie, prima coloan i ultima coloan), sau mesajul NU n caz
contrar.
Exemplu: pentru n=4, m=5, tabloul alturat i x=12, se afieaz pe
ecran mesajul DA.
(10p.)

Prob scris la informatic


Limbajul C/C++

12
3

12 11

20 10 20 12

13

30 12
7

12 14

Varianta 9

Filiera teoretic, profilul real, specializrile: matematic-informatic, matematic-informatic intensiv informatic


Filiera vocaional, profilul militar, specializarea matematic-informatic

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.

Subprogramele f1 i f2 sunt definite mai jos.


int f1(int n)
{ if(n==0) return 1;
else return n*f1(n-1);
}

a.

int f2(int n)
{ if(n!=1) return n*f2(n-1);
else return 0;
}

La apel, pentru parametrul n=5, returneaz valoarea 120:


b. numai f1
c. numai f2
att f1, ct i f2

d.

(4p.)
nici f1, nici f2

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


2.

Utiliznd metoda bactracking se genereaz n ordine lexicografic toate irurile de 5 litere


distincte din mulimea {C, A, R, T, E}, astfel nct n fiecare ir litera T precede litera A.
Primele trei soluii generate sunt, n aceast ordine: CERTA, CETAR, CETRA. Scriei cea de
a patra i cea de a cincea soluie, n ordinea generrii acestora.
(6p.)

3.

Subprogramul duplicare are doi parametri:


n, prin care primete un numr natural (n
[1,104]);
d, prin care furnizeaz numrul obinut prin duplicarea fiecrei cifre pare a lui n sau -1
dac acesta nu are nicio cifr par.
Scriei definiia complet a subprogramului.
Exemplu: dac n=2380, dup apel d=2238800.
(10p.)

4.

Fiierul bac.txt conine un ir de cel mult 106 numere naturale distincte din intervalul
[0,109]. Numerele din ir sunt separate prin cte un spaiu.
Se cere s se determine cei mai mari doi termeni pari din ir care sunt precedai de doar
trei termeni impari. Termenii determinai se afieaz pe ecran, n ordine strict cresctoare,
separai printr-un spaiu, iar dac n ir nu exist doi astfel de termeni, se afieaz pe
ecran mesajul Nu exista.
Pentru determinarea termenilor cerui se utilizeaz un algoritm eficient din punctul de
vedere al spaiului de memorie i al timpului de executare.
Exemplu: dac fiierul conine numerele
4 3 5 312 27 30 14 212 11 15 17 400
se afieaz pe ecran numerele
30 212
(4 este precedat de 0 numere impare, 312 este precedat de 2 numere impare, 30, 14 i
212 sunt precedate de 3 numere impare, iar 400 este precedat de 6 numere impare;
dintre numerele 30, 14 i 212 cele mai mari sunt 30 i 212).
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++

Varianta 9

Filiera teoretic, profilul real, specializrile: matematic-informatic, matematic-informatic intensiv informatic


Filiera vocaional, profilul militar, specializarea matematic-informatic

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