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++
Simulare
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 efectiv de lucru 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.

Indicai expresia C/C++ care are valoarea 1 dac i numai dac numrul memorat n
variabila ntreag x aparine mulimii {2015, 2016, 2017}.
(4p.)

a.

x==2015 && !(x<2016 || x<2017)

b.

x==2015 && !(x<2016 && x<2017)

c.

x==2015 || !(x<2016 || x>2017)

d.

x==2015 || !(x<2016 && x>2017)

2. Se consider algoritmul alturat, reprezentat n pseudocod.


S-a notat cu a%b restul mpririi numrului natural a la numrul
natural nenul b.
a)
b)

c)

d)

m 0
repet
citete x

(numr natural)
Scriei valoarea afiat dac se citesc, n aceast ordine,
y x
numerele 29678, 125, 1233345, 2, 78664, 0.
(6p.) repet
Scriei un ir de date de intrare, format din numere naturale, c y%10
astfel nct, n urma executrii algoritmului, s se afieze y [y/10]
valoarea 2016.
(4p.) pn cnd cy%10
dac y0 atunci
Scriei n pseudocod un algoritm, echivalent cu cel dat,
m m*10+c
nlocuind a doua structur repet ...pn cnd cu o

structur repetitiv de alt tip.


(6p.) pn cnd x=0
scrie m
Scriei programul C/C++ corespunztor algoritmului dat. (10p.)

Prob scris la informatic


Limbajul C/C++

Simulare

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.
a.
2.

a.

Se consider arborele cu 7 noduri, numerotate de la 1 la 7, reprezentat prin vectorul de


tai (5,4,5,3,0,3,1). Mulimea tuturor frunzelor arborelui este:
(4p.)
{2}

b.

c.

{1, 4}

{3, 5}

d.

{2, 6, 7}

d.

Se consider graful neorientat cu cinci noduri, reprezentat


alturat. Numrul minim de muchii ce trebuie adugate astfel
nct, n graful obinut, ntre oricare dou noduri distincte s
existe cel puin un lan elementar de lungime 3, este:
(4p.)
1

b.

c.

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


3.

Se consider declararea alturat, n care struct triunghi


{ int baza,inaltime;
variabilele t1 i t2 memoreaz baza i nlimea
} t1, t2;
a dou triunghiuri.
Scriei o secven de instruciuni C/C++ care afieaz pe ecran mesajul aceeasi arie,
dac cele dou triunghiuri au arie egal, sau mesajul arii diferite, n caz contrar. (6p.)

4.

Variabilele i i j din secvena de instruciuni de mai jos sunt de tip ntreg, iar variabila a
memoreaz un tablou bidimensional cu 5 linii i 5 coloane, numerotate de la 0 la 4, cu
elemente de tip char. Fr a utiliza alte variabile, scriei una sau mai multe instruciuni
care pot nlocui punctele de suspensie astfel nct, n urma executrii secvenei obinute,
tabloul memorat n variabila a s aib elementele din figura de mai jos.
for(i=0;i<5;i++)
for(j=0;j<5;j++)
...............

5.

(6p.)

!
?
!
?
!

?
!
?
!
?

!
?
!
?
!

?
!
?
!
?

!
?
!
?
!

Dou fraze se numesc anagrame dac literele lor sunt identice, dispuse eventual n alt
ordine.
Scriei un program C/C++ care citete de la tastatur dou fraze, separate prin Enter,
fiecare fiind format din cel mult 100 de caractere. Cuvintele din fiecare fraz conin numai
litere mici ale alfabetului englez i sunt separate prin cte un spaiu. Programul afieaz pe
ecran mesajul DA, dac cele dou fraze sunt anagrame, sau mesajul NU, n caz contrar.
Exemple: dac se citesc, n aceast ordine, frazele:
quid est veritas
est vir qui adest
pe ecran se afieaz mesajul DA
iar dac se citesc, n aceast ordine, frazele:
lycophron ptolemaios
chronophyl apo melitos
pe ecran se afieaz mesajul NU.
(10p.)

Prob scris la informatic


Limbajul C/C++

Simulare

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.

a.

Se consider subprogramul f, definit void f(int x, int nr)


alturat. Indicai numrul valorilor { if(x*nr>0)
{ if(x%4==0)
ntregi afiate n urma apelului de mai
cout<<x<< ; | printf(%d ,x);
jos.
f(x-4,nr-1);
f(2024,2);
}
(4p.)
cout<<x<< ; | printf(%d ,x);
}
3

b.

c.

d.

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


2.

Utiliznd metoda backtracking se genereaz, n ordine lexicografic, toate irurile de 4


litere distincte din mulimea {s, i, m, u, l, a, r, e}, n care nu exist dou vocale sau dou
consoane alturate. Primele 5 iruri generate sunt, n aceast ordine: alem, aler, ales,
alim, alir. Scriei, n ordinea obinerii lor, urmtoarele dou iruri generate imediat dup
irul ruse.
(6p.)

3.

Un numr natural nenul se numete sPar dac att el, ct i suma divizorilor si proprii
(divizori diferii de 1 i de el nsui), sunt numere pare.
Subprogramul sPar are un singur parametru, n, prin care primete un numr natural
(n
[1,109]). Subprogramul returneaz cel mai mic numr sPar, strict mai mare dect n.
Scriei definiia complet a subprogramului.
Exemplu: dac n=95, atunci subprogramul returneaz 98 (att 98, ct i
72=2+7+14+49, sunt numere pare).
(10p.)

4.

Un numr x se numete sufix al unui numr y dac y se poate obine din x prin alipirea,
la stnga sa, a cel puin unei alte cifre.
Fiierul bac.in conine un ir de cel mult 109 numere naturale din intervalul [0,109].
Numerele din ir sunt separate prin cte un spaiu.
Se cere s se afieze pe ecran, n ordine strict cresctoare, toate numerele din intervalul
[100,999] care sunt termeni ai irului aflat n fiier i sunt sufixe pentru cel puin un alt
termen al aceluiai ir. Numerele sunt afiate cte unul pe linie, iar dac n ir nu exist
astfel de numere, se afieaz pe ecran mesajul Nu exista. Pentru determinarea
numerelor cerute se utilizeaz un algoritm eficient din punctul de vedere al timpului de
executare.
Exemplu: dac fiierul bac.in are coninutul
15502 49 54321 6149 76149 123 123 502 4321 321 321
atunci pe ecran se afieaz numerele
321
502
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++

Simulare

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