You are on page 1of 3

Ministerul Educaiei, Cercetrii, Tineretului i Sportului

Centrul Naional de Evaluare i Examinare

Examenul de bacalaureat 2010


Proba E-d)
Proba scris la INFORMATIC
Limbajul C/C++
Specializarea tiine ale naturii
Varianta 8

Toate subiectele (I, II i III) 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).

SUBIECTUL I

(30 de puncte)

Pentru itemul 1, scriei pe foaia de examen litera corespunztoare rspunsului corect.


1.
a.
c.

Se consider definite trei variabile de tip int: x, y i z. O expresie C/C++ care are
valoarea 1 dac i numai dac x, y i z au valori identice este:
(4p.)
x==y && x==z
b. x==y==z
x==y || x==z || y==z
d. !( x!=y && x!=z)
citete n (numr natural nenul)
s
0
pentru
i
1,n execut
Scriei numrul afiat n urma executrii

a

0
algoritmului dac pentru n se citete
b
1
valoarea 6.
(6p.)
j
1
Scriei o valoare care poate fi citit
ct timp j<i execut
pentru n astfel nct s se afieze
r
2*b-a
valoarea 55.
(4p.)
a
b

b
r
Scriei n pseudocod un algoritm,

j

j+1
echivalent cu cel dat, care s conin o

singur structur repetitiv.


(6p.)
s
s+b
Scriei programul C/C++ corespunztor

algoritmului dat.
(10p.) scrie s

2. Se consider algoritmul alturat descris


n pseudocod.
a)

b)

c)

d)

Prob scris la INFORMATIC


Specializarea tiine ale naturii

Varianta 8
Limbajul C/C++

Ministerul Educaiei, Cercetrii, Tineretului i Sportului


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.
O expresie C/C++ care are valoarea 1 este:
(4p.)
a. floor(7)+1==ceil(7)
b. floor(7.19)==ceil(7.19)
c. floor(7.19)==floor(7.91)
d. floor(7.91)==ceil(7.19)
2.

a.

x<y && z<w && w<x


Se consider variabilele x, y, z i w care memoreaz cte un
numr real, astfel nct expresia C/C++ alturat are valoarea
1.
Variabila care are ca valoare cel mai mare dintre numerele menionate mai sus este: (4p.)
x
b. y
c. z
d. w

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


s=0;
3.
Variabilele i i s sunt ntregi. Rescriei secvena de
for(i=79;i>=25;i--)
instruciuni alturat, completnd zona punctat astfel
..........
nct, n urma executrii secvenei obinute, variabila s s
memoreze suma divizorilor lui 2500 din intervalul
[25,79].
(6p.)
4.

Se citete un numr natural nenul i se cere s se scrie numrul de cifre distincte din
scrierea acestuia.
Exemplu: dac numrul citit este 1612325, valoarea obinut este 5.
a) Scriei, n pseudocod, algoritmul de rezolvare pentru problema enunat.

(10p.)

b) Menionai rolul tuturor variabilelor care au intervenit n prelucrarea realizat la punctul a)


i indicai datele de intrare, respectiv datele de ieire ale problemei enunate.
(6p.)

Prob scris la INFORMATIC


Specializarea tiine ale naturii

Varianta 8
Limbajul C/C++

Ministerul Educaiei, Cercetrii, Tineretului i Sportului


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.
Pentru a calcula n mod eficient media aritmetic a elementelor unui tablou unidimensional
cu n componente numere naturale, toate egale, este necesar i suficient s se execute:(4p.)
a. o singur instruciune de atribuire
b. o singur parcurgere a tabloului i o
singur atribuire
d. dou parcurgeri ale tabloului
c. o singur parcurgere a tabloului i dou
atribuiri
Scriei pe foaia de examen rspunsul pentru fiecare dintre cerinele urmtoare.
2.
n secvena alturat de instruciuni, for(i=0;i<=4;i++){
for(.....)
variabilele i i j sunt de tip ntreg.
cout<<j<<' '; | printf("%d ",j);
cout<<endl; | printf("\n");
}
Rescriei secvena, completnd zona punctat astfel nct, n urma executrii secvenei
obinute, s se afieze pe ecran, n aceast ordine, numerele de mai jos.
0
1 0
2 1 0
3 2 1 0
4 3 2 1 0
(6p.)
3.

Se consider irul s,
alturat.

construit dup regula

Scriei un program C/C++ care citete de la tastatur un numr natural n (3<n<20) i


construiete n memorie un tablou unidimensional care memoreaz primii n termeni ai
irului s, definit dup regula de mai sus, astfel nct numerele impare s ocupe primele
poziii n tablou, iar cele pare s fie memorate n continuarea celor impare. Programul
afieaz pe ecran elementele tabloului construit, separate prin cte un spaiu.
Exemplu: dac n=6, primii ase termeni ai irului sunt 1, 1, 2, 5, 13, 34, iar tabloul
construit poate fi (1,1,5,13,2,34).
(10p.)
4.

Fiierul bac.in conine pe prima linie un numr natural n (3<n<1000), iar pe


urmtoarea linie, un ir de n numere naturale distincte, de cel mult nou cifre fiecare.
Numerele din ir sunt separate prin cte un spaiu i cel puin dou dintre ele au ultima
cifr egal cu 5.
a) Scriei un program C/C++ care citete toate numerele din fiier i, utiliznd un algoritm
eficient din punct de vedere al timpului de executare i al memoriei utilizate, determin i
afieaz pe ecran cele mai mari dou numere din ir care au ultima cifr egal cu 5.
Numerele determinate sunt afiate n ordine cresctoare, separate printr-un spaiu. (6p.)
Exemplu: dac fiierul bac.in are coninutul 10
alturat, pe ecran se vor afia, n aceast ordine, 97 5 11 1 8 6 85 3 25 15
numerele: 25 85
b) Descriei succint, n limbaj natural (3-4 rnduri), algoritmul utilizat la punctul a) i
justificai eficiena acestuia.
(4p.)

Prob scris la INFORMATIC


Specializarea tiine ale naturii

Varianta 8
Limbajul C/C++

You might also like