Sunteți pe pagina 1din 3

Ministerul Educaiei, Cercetrii, Tineretului i Sportului

Centrul Naional de Evaluare i Examinare

Examenul de bacalaureat 2011


Proba E. d)
Proba scris la INFORMATIC
Limbajul C/C++
Varianta 1
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).

SUBIECTUL I
(30 de puncte)
Pentru itemul 1, scriei pe foaia de examen litera corespunztoare rspunsului corect.
1.

Indicai care dintre expresiile C/C++ de mai jos are valoarea 1 dac i numai dac numrul
natural memorat n variabila x are cifra unitilor egal cu 5 i este un multiplu al numrului
natural nenul memorat n variabila y.
(4p.)

a. x%10==5 && x%y==0

b. x%10==5 || x%y==0

c. x%5==0 && x%y==0

d. x%10==5 && y%x==0

citete n,m
2. Se consider algoritmul alturat, descris n
(numere naturale)
pseudocod.
p
1
S-a notat cu x%y restul mpririi numrului natural x la
numrul natural nenul y i cu [z] partea ntreag a ct timp m>0 execut
c
m%10
numrului real z.
m
[m/10]
a. Scriei numrul care se afieaz n urma executrii n
n+p*c
algoritmului dac pentru variabila n se citete valoarea
p
p*10
103456, iar pentru variabila m valoarea 1234.
(6p.)
scrie n
b. Scriei toate perechile de valori naturale distincte care
pot fi citite pentru variabilele n i m astfel nct, n urma
executrii algoritmului, pentru fiecare dintre acestea,
numrul afiat s fie 10.
(6p.)
c. Scriei n pseudocod un algoritm care s nu foloseasc structuri repetitive i care s fie
echivalent cu cel dat.
(4p.)
d. Scriei programul C/C++ corespunztor algoritmului dat.

Prob scris la Informatic


Limbajul C/C++

(10p.)

Varianta 1

Filiera teoretic, profilul real, specializrile matematic informatic, matematic informatic intensiv informatic
Filiera vocaional, profilul militar, specializarea matematic informatic

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.

Indicai numrul de circuite distincte ale grafului orientat cu 6 vrfuri,


numerotate de la 1 la 6, reprezentat prin listele de adiacen alturate.
Se consider c un circuit este format numai din arce distincte. Dou
circuite sunt distincte dac difer prin cel puin un arc.
(4p.)

a. 0
2.

b. 1

c. 2

1:
2:
3:
4:
5:
6:

3
1, 5, 6
2
3
list vid
4, 5

d. 3

Numim nlime a unui arbore cu rdcin numrul de muchii ale celui mai lung lan
elementar care are una dintre extremiti n rdcina arborelui.
nlimea arborelui cu rdcin, avnd 8 noduri, numerotate de la 1 la 8, reprezentat prin
vectorul de tai (6,6,5,0,6,4,4,7) este:
(4p.)

a. 2

b. 3

c. 4

d. 5

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


struct punct
{
int x,y;
} A,B;

3.

Fiecare dintre variabilele A i B, declarate alturat,


memoreaz coordonatele (x abscisa, iar y ordonata)
cte unui punct n sistemul de coordonate xOy.
Scriei o expresie C/C++ care are valoarea 1 dac i
numai dac segmentul cu capetele n punctele
corespunztoare variabilelor A i B intersecteaz axa
Oy a sistemului de coordonate.
(6p.)

4.

n secvena de program alturat variabila a


memoreaz un ir cu cel mult 100 de
caractere, iar variabilele i i k sunt de tip
ntreg.
Scriei irul afiat pe ecran n urma executrii
secvenei.
(6p.)

5.

Scriei un program C/C++ care citete de la tastatur dou numere naturale n i m (2<n
24,
2<m
24) i construiete n memorie un tablou bidimensional cu n linii i m coloane, n care
orice element aflat pe prima linie sau pe prima coloan are valoarea 1 i oricare alt element
din tablou este egal cu ultima cifr a sumei celor dou elemente alturate lui, aflate pe aceeai
linie dar pe coloana din stnga, respectiv pe aceeai coloan, dar pe linia anterioar.
Programul afieaz pe ecran tabloul obinut, cte o linie a tabloului pe cte o linie a
ecranului, elementele fiecrei linii fiind separate prin cte un spaiu.

k=a-A;
strcpy(a,ExaMeN);
for(i=0;i<strlen(a);i++)
if(a[i]>=a && a[i]<=z)
a[i]=a[i]-k;
else
a[i]=a[i]+k;
cout<<a; | printf(%s,a);

Exemplu: pentru n=4 i m=5 se afieaz pe ecran tabloul alturat.


(10p.)

Prob scris la Informatic


Limbajul C/C++

1
1
1
1

1
2
3
4

1
3
6
0

1
4
0
0

1
5
5
5

Varianta 1

Filiera teoretic, profilul real, specializrile matematic informatic, matematic informatic intensiv informatic
Filiera vocaional, profilul militar, specializarea matematic informatic

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.

Utiliznd metoda backtracking se genereaz n ordine cresctoare toate numerele naturale


de cte patru cifre din mulimea A={1,2,3,4,5}, numere care nu conin dou cifre impare
alturate. Primele opt numere generate sunt, n aceast ordine, 1212, 1214, 1221, 1222,
1223, 1224, 1225, 1232. Ultimul numr generat este:
(4p.)
5455

b.

5454

c.

5452

d.

5445

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


2.

Se consider subprogramul f, definit alturat. int f (long x)


Scriei ce valori au f(0), respectiv { if(x>=123) return 1+f(x/10);
return 123;
f(123456).
}
(6p.)

3.

Subprogramul sub are trei parametri:


n, prin care primete un numr natural (0<n<100);
v, prin care primete un tablou unidimensional care memoreaz un ir de n numere
naturale, fiecare avnd cel puin dou cifre i cel mult patru cifre;
s, un numr natural (0
s<18).
Subprogramul determin i afieaz pe ecran, separate prin cte un spaiu, n ordine
descresctoare, toate numerele din ir care au suma dintre cifra unitilor i cifra zecilor
strict mai mare dect s. Dac irul nu conine niciun astfel de numr, subprogramul
afieaz pe ecran mesajul NU EXISTA. n urma apelului, tabloul transmis subprogramului
ca parametru nu se modific.
Scriei n limbajul C/C++ definiia complet a subprogramului sub.
Exemplu: pentru n=10, v=(351,149,3794,502,785,258,258,1512,489,693),
s=12 n urma apelului, subprogramul afieaz pe ecran, n aceast ordine, valorile:
3794 785 489 258 258 149.
(10p.)

4.

Fiierul BAC.TXT conine un ir de cel mult 1000 de numere naturale, desprite prin cte
un spaiu, fiecare numr avnd cel mult 9 cifre. Cel puin dou numere din fiier sunt
ptrate perfecte.
Se citete irul din fiier i se cere ca, utiliznd un algoritm eficient din punct de vedere al
memoriei utilizate i al timpului de executare, s se determine i s se afieze pe ecran
lungimea maxim a unei secvene a irului care ncepe i se ncheie cu cte un numr
ptrat perfect. O secven este format din termeni aflai pe poziii consecutive n ir.
Lungimea unei secvene este egal cu numrul de termeni ai acesteia.
Exemplu: dac fiierul BAC.TXT conine numerele
11 245 36 67 8 576 11 16 41 144 67 89 1011
pe ecran se afieaz 8 (corespunztor secvenei 36 67 8 576 11 16 41 144).
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 1

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