Sunteți pe pagina 1din 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 matematic informatic
Varianta 10

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.

Indicai care dintre expresiile C/C++ de mai jos are valoarea 1 dac i numai dac
numrul natural memorat n variabila ntreag n este divizibil cu 2 i cu 7.
(4p.)
!( (n%2==1) || (n%7!=0) )
b. (n%2==0) && (n%7!=0)
(n%2==0) || !(n%7==0)
d. (n%7==2) && (n%2==7)

2. Se consider algoritmul alturat descris n


pseudocod:
S-a notat cu x%y restul mpririi numrului natural x
la numrul natural nenul y i cu [z] partea ntreag a
numrului real z.

citete n (numr natural nenul)


m
0
repet
c
n%10
n
[n/10]
dac c>5 atunci
c
[c/2]

m
m*10+c
pn cnd n=0
scrie m

a)

Scriei numrul afiat dac pentru variabila n se


citete valoarea 64598.
(6p.)

b)

Scriei toate numerele de exact trei cifre care


pot fi citite pentru variabila n astfel nct, pentru
fiecare dintre acestea, numrul afiat n urma
executrii algoritmului s fie 24.
(4p.)

c)

Scriei n pseudocod un algoritm, echivalent cu cel dat, n care s se nlocuiasc structura


repet...pn cnd cu o structur repetitiv de alt tip.
(6p.)

d)

Scriei programul C/C++ corespunztor algoritmului dat.

Prob scris la INFORMATIC


Specializarea matematic-informatic

(10p.)

Varianta 10
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.

a.
c.
2.

a.

Se consider declararea alturat, n care variabila struct cerc {


float x, y;
FIG memoreaz coordonatele, n planul xOy, ale
float raza;
centrului unui cerc, precum i lungimea razei acestuia.
}
FIG;
O expresie C/C++ care are valoarea 1 dac i numai
dac centrul cercului se afl pe prima bisectoare a
sistemului de coordonate al planului xOy este:
(4p.)
centru(x)==centru(y)
b. FIG.cerc.x==FIG.cerc.y
FIG(x)==FIG(y)
d. FIG.x==FIG.y
O matrice de adiacen prin care poate fi reprezentat graful
orientat cu 3 vrfuri, reprezentat n figura alturat, este:
(4p.)

0 1 0
0 0 1
0 0 0

b.

0 0 1
0 0 1
0 0 0

c.

0 0 0
0 0 1
0 0 1

d.

0 1 0
1 0 1
0 1 0

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


3.

n secvena de instruciuni de mai jos, variabilele i i j sunt de tip ntreg i se consider c


variabila A memoreaz elementele, iniial nule, ale unui tablou bidimensional, cu 5 linii i 5
coloane, numerotate de la 0 la 4.
Fr a utiliza i alte variabile dect cele menionate mai sus, scriei o instruciune care
poate nlocui punctele de suspensie astfel nct, n urma executrii secvenei, tabloul
memorat n variabila A s aib elementele din figura de mai jos.
1 2 3 4 5
3 4 5 6 7
5 6 7 8 9
7 8 9 10 11
9 10 11 12 13

for(i=0;i<5;i++)
for(j=0;j<5;j++)
.......

(6p.)

4.

Se consider arborele cu rdcin, avnd 10 noduri, numerotate de la 1 la 10, cu vectorul


de tai t=(3,3,8,0,8,9,9,4,4,9). Enumerai toate nodurile arborelui care au exact
doi fii.
(6p.)

5.

Se consider un text cu cel mult 100 de caractere, format din cuvinte i numere, separate
prin unul sau mai multe spaii. Cuvintele sunt formate numai din litere ale alfabetului
englez. Toate numerele sunt reale, pozitive i sunt formate numai din parte ntreag sau
din parte ntreag i parte fracionar, separate prin punctul zecimal (.).
Scriei un program C/C++ care citete de la tastatur textul, pe care l transform,
eliminnd din componena sa toate numerele care au parte fracionar. Programul afieaz
apoi pe ecran textul obinut.
Exemplu: dac textul citit este
Reprezentat cu
4 zecimale PI este 3.1415 si e este 2.7182
se va afia pe ecran textul:
Reprezentat cu
4 zecimale PI este si e este
(10p.)

Prob scris la INFORMATIC


Specializarea matematic-informatic

Varianta 10
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.

a.

Se consider subprogramul p, definit


alturat. Valoarea lui p(210, 49)
este:
1

b.

(4p.)

int p(int m, int n)


{ if(n==0) return 1;
return 1+p(n, m%n);
}
c.

d.

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


2.

Avnd la dispoziie cinci flori diferite, lalea, narcis, mac, frezie, garoaf, se
utilizeaz metoda backtracking pentru a obine toate posibilitile de a forma un
aranjament floral, tiind c se folosesc toate cele cinci flori i conteaz ordinea de aezare
a acestora. Primele patru soluii obinute sunt, n aceast ordine: (lalea, narcis, mac,
frezie, garoaf), (lalea, narcis, mac, garoaf, frezie), (lalea, narcis,
frezie, mac, garoaf), (lalea, narcis, frezie, garoaf, mac). Scriei ultimele
dou soluii generate, n ordinea obinerii lor.
(6p.)

3.

Subprogramul tablou are trei parametri:


 n i k, prin care primete cte un numr natural (3n20, 2k10);
 a, prin care furnizeaz un tablou unidimensional care memoreaz un ir cresctor de
nk termeni, din mulimea primelor n numere naturale nenule, fiecare astfel de numr
fiind n ir de exact k ori.
Scriei n limbajul C/C++ definiia complet a subprogramului.
Exemplu: dac n=4, k=3 atunci, dup apel, a=(1,1,1,2,2,2,3,3,3,4,4,4). (10p.)

4.

Fiierul BAC.TXT conine, n ordine cresctoare, cel puin dou i cel mult 10000 de
numere naturale. Numerele sunt separate prin cte un spaiu i au cel mult 9 cifre fiecare.
Cel puin un numr din fiier este par.
a) Scriei un program C/C++ care citete toate numerele din fiier i, printr-un algoritm
eficient din punct de vedere al timpului de executare i al memoriei utilizate, determin i
afieaz pe ecran, n ordine strict cresctoare, separate prin cte un spaiu, toate
numerele pare care apar n fiier. Fiecare numr se va afia o singur dat.
(6p.)
Exemplu: dac fiierul are coninutul de mai jos
1 1 2 2 2 7 10 10 10 10 24
pe ecran se afieaz, n aceast ordine, numerele 2 10 24.
b) Descriei n limbaj natural (3-4 rnduri) algoritmul utilizat la punctul a) i justificai
eficiena acestuia.
(4p.)

Prob scris la INFORMATIC


Specializarea matematic-informatic

Varianta 10
Limbajul C/C++

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