Sunteți pe pagina 1din 35

Ministerul Educaiei, Cercetrii i Inovrii

Centrul Naional pentru Curriculum i Evaluare n nvmntul Preuniversitar

95

Subiectul II (30 de puncte) - Varianta 095


Pentru fiecare dintre itemii 1 i 2 scriei pe foaia de examen litera care corespunde
rspunsului corect.
1.

Cte valori nule pot s apar ntr-un vector cu legturi de tip tat asociat unui arbore cu
rdcin care conine 10 noduri?
(4p.)

a.

niciuna

b.

exact una

c.

depinde de configuraia arborelui

d.

exact dou

2.

n secvena alturat, i, j i n sunt variabile ntregi, iar a for(i=0; i<n; i++)


for(j=0; j<n; j++)
este o matrice ptratic format din n linii i n coloane
a[i][j] = (i+j)%n;
numerotate de la 0 la n-1. Care este suma elementelor
de pe diagonala secundar din matricea a, n urma
executrii acestei secvene, dac n=8?
(4p.)

a.

b.

64

c.

24

56

d.

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


3.

Se d graful orientat cu 5 noduri, numerotate de la 1 la 5, definit 0


prin matricea de adiacen alturat. Determinai un drum de 0
lungime maxim de la nodul 1 la nodul 5 , care s fie alctuit din 0
arce distincte dou cte dou. Scriei lungimea drumului 0
determinat precum i arcele care l compun (lungimea unui drum 0
este egal cu numrul de arce care l compun).
(6p.)

4.

Scriei listele de adiacen pentru un graf neorientat care are 8 noduri, numerotate de la 1 la
8, i care are urmtoarele proprieti:
- are trei componente conexe;
- nu are noduri izolate;
- are un numr maxim de muchii.
(6p.)

5.

Scriei un program n limbajul C/C++ care citete de la tastatur un singur ir, format din cel
mult 20 de caractere, care reprezint numele i prenumele unei persoane. ntre nume i
prenume se afl un numr oarecare de caractere spaiu (cel puin unul). Att numele, ct i
prenumele, sunt formate numai din litere mici ale alfabetului englez. Programul construiete
n memorie i afieaz pe ecran un alt ir de caractere, care s conin iniiala prenumelui
(prima liter a prenumelui), urmat de un caracter punct, de exact un spaiu i de numele
din irul citit iniial. Toate literele din irul afiat vor fi de asemenea litere mici.
Exemplu: dac se citete irul:
popescu
vasile
se va construi i apoi se va afia pe ecran irul
v. popescu
(10p.)

BACALAUREAT 2009 - INFORMATIC, limbajul C/C++


Specializarea Matematic-informatic

1
0
1
0
0

0
1
0
1
0

0
1
1
0
0

0
1
0
0
0

Subiectul II

Ministerul Educaiei, Cercetrii i Inovrii


Centrul Naional pentru Curriculum i Evaluare n nvmntul Preuniversitar

94

Subiectul II (30 de puncte) - Varianta 094


Pentru fiecare dintre itemii 1 i 2 scriei pe foaia de examen litera care corespunde
rspunsului corect.
1.

Care dintre nodurile grafului neorientat cu 5 noduri 0 1 1


numerotate de la 1 la 5, dat prin matricea de adiacen 1 0 1
alturat, are gradul cel mai mare?
(4p.) 1 1 0
0 0 1
0 1 1

a.

2.

n secvena alturat, i, j i n sunt variabile ntregi, iar a for(i=0; i<8; i++)


for(j=0; j<8; j++)
este o matrice format din 8 linii i 8 coloane, numerotate
a[i][j] = (i+j)%8;
de la 0 la 7. Care este suma elementelor de pe ultima
linie a matricei, n urma executrii acestei secvene? (4p.)

a.

28

b.

b.

84

c.

c.

36

d.

d.

0
0
1
0
1

0
1
1
1
0

21

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


3.

Un graf neorientat cu 5 noduri, numerotate de la 1 la 5, conine urmtoarele muchii: [1,2],


[1,3], [2,3], [2,5], [3,4], [3,5], [4,5]. Eliminai din acest graf numrul necesar de
muchii astfel nct graful parial rezultat s fie arbore. Considernd c acest arbore are ca
rdcin vrful 5, care este vectorul cu legturi de tip tat corespunztor ?
(6p.)

4.

Un graf neorientat cu 5 noduri, numerotate de la 1 la 5, este 1:


reprezentat prin listele de adiacen alturate. Transformai acest 2:
graf ntr-un graf orientat prin nlocuirea fiecrei muchii cu exact un 3:
arc, astfel nct n graful orientat care rezult s existe cel puin un 4:
drum de la orice nod x pn la orice nod y, (xy). Scriei 5:
reprezentarea grafului orientat pe care l-ai construit, prin liste de
adiacen.
(6p.)

5.

Scriei un program n limbajul C/C++ care citete de la tastatur un singur ir format din cel
mult 20 de caractere care reprezint numele i prenumele unei persoane. ntre nume i
prenume se afl un numr oarecare de caractere spaiu (cel puin unul). Att numele ct i
prenumele sunt formate numai din litere ale alfabetului englez. Programul construiete n
memorie i afieaz pe ecran un al doilea ir de caractere, care s conin prenumele,
urmat de exact un spaiu i apoi numele din irul citit iniial.
Exemplu: dac se citete irul:
Popescu
Vasile
se va construi i apoi se va afia pe ecran irul
Vasile Popescu

BACALAUREAT 2009 - INFORMATIC, limbajul C/C++


Specializarea Matematic-informatic

2,
1,
1,
3,
2,

3
3, 5
2, 4, 5
5
3, 4

(10p.)

Subiectul II

Ministerul Educaiei, Cercetrii i Inovrii


Centrul Naional pentru Curriculum i Evaluare n nvmntul Preuniversitar

93

Subiectul II (30 de puncte) - Varianta 093


Pentru fiecare dintre itemii 1 i 2 scriei pe foaia de examen litera care corespunde
rspunsului corect.
1.

Care este numrul minim de noduri ce trebuie eliminate din graful


alturat astfel nct subgraful obinut s nu fie conex?
(4p.)

a.

2.

n declararea alturat, cmpurile x i y ale nregistrrii pot struct punct


memora coordonatele carteziene ale unui punct din planul xOy. {
float x,y;
Care dintre urmtoarele expresii are valoarea 1 dac i numai
}P;
dac punctul P este situat pe axa Ox ?
(6p.)

a.

P.x==0

b.

b.

P.y==0

c.

c.

P.x+P.y==0

d.

d.

P.x==P.y

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


3. Se consider arborele din figura alturat.
a) Care este nodul care trebuie ales ca rdcin astfel nct aceasta s
aib 4 descendeni direci (fii)?
(3p.)
b) Care sunt cei patru fii ai nodului ales ca rdcin n acest caz?

(3p.)

4. Se consider o list liniar simplu nlnuit asupra creia se execut urmtoarea prelucrare:
ntre oricare dou elemente ce memoreaz valorile x i y,aflate pe poziii consecutive, se
insereaz cel mai mare divizor comun al numerelor x i y. Dac lista conine iniial, n
ordine, doar numerele 10,4,2,6 precizai care este numrul maxim de elemente aflate pe
poziii consecutive ce vor memora aceeai valoare, dup realizarea prelucrrii menionate.
(4p.)
5. Un ir de caractere s se numete ablon pentru un alt ir de caractere x, dac este format
din caractere din mulimea {*,?,#}, are aceeai lungime cu x i pe fiecare poziie din s n
care apare * n x se gsete o vocal, pe fiecare poziie din s n care apare # n x se
gsete o consoan i pe fiecare poziie din s n care apare ? putem avea orice caracter
n x. Se consider vocal orice liter din mulimea {a,e,i,o,u}.
Scriei programul C/C++ care citete de la tastatur dou iruri de caractere, de aceeai
lungime, formate din cel mult 200 de litere mici ale alfabetului englez, i afieaz pe ecran
un ablon comun celor dou iruri citite, care conine un numr minim de caractere ?.
Exemplu: pentru irurile diamant i pierdut se afieaz #**#??#
(10p.)

BACALAUREAT 2009 - INFORMATIC, limbajul C/C++


Specializarea Matematic-informatic

Subiectul II

Ministerul Educaiei, Cercetrii i Inovrii


Centrul Naional pentru Curriculum i Evaluare n nvmntul Preuniversitar

92

Subiectul II (30 de puncte) - Varianta 092


Pentru fiecare dintre itemii 1 i 2 scriei pe foaia de examen litera care corespunde
rspunsului corect.
1.

Care dintre urmtoarele arce aparine grafului


orientat cu 4 vrfuri, avnd gradele din tabelul
alturat (x,yN)?
(4p.)

a.

(2,3)

2.

Variabila s este de tip ir de caractere, iar variabilele c1 i c2 sunt de tip char. Care
expresie are valoarea 1 dac i numai dac irul de caractere s conine caracterele
memorate de variabilele c1 i c2?
(6p.)

a.

strstr(s,c1+c2)!=0

b.

strchr(s,c1)!=0 || strchr(s,c2)!=0

c.

strchr(strchr(s,c1),c2)!=0

d.

(strchr(s,c1)!=0)&&(strchr(s,c2)!=0)

b.

(1,2)

c.

(1,4)

d.

(4,1)

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


3.

Scriei vectorul de tai corespunztor arborelui cu 6 noduri, 1: 4,6


numerotate de la 1 la 6, dat prin lista alturat a 2: descendenilor direci (fiilor).
(6p.) 3: 1,5
4: 5: 6: 2

4.

Scriei o expresie logic C/C++ care s struct punct {


float x; float y;
codifice condiia ca variabila v din
};
declaraiile
alturate
s
reprezinte
segment
{
segmentul nul
(segmentul care are struct
struct
punct
origine;
originea identic cu extremitatea).
(4p.)
struct punct extremitate;
} v;

5.

Scriei un program C/C++ care citete de la tastatur numerele ntregi m i n (1m50,


1n50) i elementele unui tablou bidimensional cu m linii i n coloane, numere ntregi
distincte de cel mult 4 cifre fiecare, i elimin din tablou, la nivelul memoriei, linia i coloana
corespunztoare elementului de valoare minim. Programul va afia tabloul obinut pe
ecran pe m-1 linii, elementele fiecrei linii fiind separate prin cte un spaiu.
(10p.)
Pe ecran se va afia:
Exemplu: pentru m=3 i n=4 i tabloul de mai jos
14 6 3
2 7 1 4
9 22 5
14 6 12 3
9 22 8 5

BACALAUREAT 2009 - INFORMATIC, limbajul C/C++


Specializarea Matematic-informatic

Subiectul II

Ministerul Educaiei, Cercetrii i Inovrii


Centrul Naional pentru Curriculum i Evaluare n nvmntul Preuniversitar

91

Subiectul II (30 de puncte) - Varianta 091


Pentru fiecare dintre itemii 1 i 2 scriei pe foaia de examen litera care corespunde
rspunsului corect.
1.

Se consider graful neorientat: cu 60 de noduri i 40 de muchii. Suma gradelor tuturor


nodurilor este egal cu :
(4p.)

a.

120

2.

Un arbore cu rdcin are 11 noduri, numerotate de la 1 la 11, i este memorat cu ajutorul


vectorului de tai t=(2,5,5,3,0,2,4,6,6,2,3). Descendenii direci (fiii) ai nodului 2
sunt:
(4p.)

a.

1, 6 i 10

b.

b.

80

c.

c.

100

6, 8 i 9

d.

d.

20

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


3.

Se consider o stiv n care iniial au fost introduse, n aceast ordine, valorile 1,2,3,4. Se
noteaz cu PUSH(x) operaia prin care se adaug valoarea x n stiv, i POP operaia prin
care se extrage un element din stiv. Presupunem c se execut urmtoarele operaii
asupra stivei considerate: POP; POP; PUSH(4); PUSH(3); PUSH(5); POP;
n urma executrii lor
a) care este elementul din vrful stivei?
(3p.)
b) care este suma elementelor aflate n stiv?
(3p.)

4.

Ce se va afia n urma executrii char c[]="abracadabra";


secvenei alturate de program, n care c[4]='i';
variabila c memoreaz un ir cu cel for(i=4;i>=0;i--)
mult 20 de caractere, iar variabila i cout<<c[i]; | printf(%c,c[i]);
este de tip ntreg?
(6p.)

5.

Scriei un program n limbajul C/C++ care citete de la tastatur dou valori naturale n i m
(1n50, 1m50) i apoi n*m valori 0 i 1 reprezentnd elementele unui tablou
bidimensional cu n linii, numerotate de la 1 la n, i m coloane, numerotate de la 1 la m;
Programul determin i afieaz pe ecran numrul de ordine al primei coloane care are un
numr maxim de valori 1.
(10p.)
Exemplu: pentru pentru n=5 i m=4 i tabloul alturat, se va afia 2.

BACALAUREAT 2009 - INFORMATIC, limbajul C/C++


Specializarea Matematic-informatic

Subiectul II

Ministerul Educaiei, Cercetrii i Inovrii


Centrul Naional pentru Curriculum i Evaluare n nvmntul Preuniversitar

90

Subiectul II (30 de puncte) - Varianta 090


Pentru fiecare dintre itemii 1 i 2 scriei pe foaia de examen litera care corespunde
rspunsului corect.
1.

Enumerai nodurile cu grad impar ale grafului neorientat cu 6 noduri numerotate de la 1 la


6 i muchiile [1,6], [2,1], [2,6], [3,2], [3,4], [3,6], [4,5], [4,6], [6,5].
(4p.)

a.

2 3 4 6

2.

Ce memoreaz variabila s, de tip ir de caractere, dup executarea instruciunilor de mai


jos?
strncpy(s,"informatica",strlen("2008"));
s[strlen("2008")]='\0';
strcat(s,"BAC");
(4p.)

a.

info

b.

b.

1 3 5

infoBAC

c.

c.

2 4 6

BACinfo

d.

d.

1 3 5 6

InformaticaBAC

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


0 1 0 0 0 1
3.
Se consider un arbore cu 6 noduri, numerotate de la 1 la 6, 1 0 1 1 1 0
reprezentat prin matricea de adiacen dat alturat. Scriei toate 0 1 0 0 0 0
nodurile care pot fi alese ca rdcin a arborelui astfel nct acesta 0 1 0 0 0 0
s aib un numr par de frunze.
0 1 0 0 0 0
(6p.) 1 0 0 0 0 0
pentru i1,5 execut
4.
n secvena alturat, i, j i n sunt variabile ntregi
pentru j1,5 execut
iar T este o matrice ptratic format din n linii i n
dac (i+j)%3=0 atunci
coloane numerotate de la 1 la n. Care va fi T
i,j [(i+j)/3]
valoarea expresiei T1,5+T2,4+T3,3+T4,2+T5,1 n altfel
urma executrii secvenei?
(6p.)
Ti,j i-j

5.

Scriei un program C/C++ care citete de la tastatur un numr natural n (1n20),


elementele unei matrice cu n linii i n coloane, numere ntregi din intervalul [-100, 100],
construiete n memorie matricea i apoi afieaz pe ecran diferena m1-m2, unde m1 este
media aritmetic a elementelor strict pozitive ale matricei, situate deasupra diagonalei
principale, iar m2 este media aritmetic a elementelor strict pozitive ale matricei, situate sub
diagonala principal, ca n exemplu. Cele dou medii se consider egale cu 0 dac nu
exist valori strict pozitive n zonele corespunztoare.
Exemplu: pentru n=4 i matricea alturat se afieaz valoarea 0.25 -1 2 -4 5
(m1=2.75, calculat din elementele aflate deasupra diagonalei 0 6 3 1
principale, marcate cu chenar, i m2=2.5, calculat din elementele 2 4 2 0
3 -5 1 -3
subliniate).
(10p.)

BACALAUREAT 2009 - INFORMATIC, limbajul C/C++


Specializarea Matematic-informatic

Subiectul II

Ministerul Educaiei, Cercetrii i Inovrii


Centrul Naional pentru Curriculum i Evaluare n nvmntul Preuniversitar

89

Subiectul II (30 de puncte) - Varianta 089


Pentru fiecare dintre itemii 1 i 2 scriei pe foaia de examen litera care corespunde
rspunsului corect.
1.

Enumerai nodurile de grad 1 din graful neorientat cu 8 noduri 1: 3 4 5 6


numerotate de la 1 la 8, reprezentat prin listele de adiacen 2: 3
3: 1 2 7
alturate.
4: 1
(4p.) 5: 1 8
6: 1
7: 3
8: 5

a.

2 3 4 5 6

2.

Ce valoare are variabila s de tip ir de caractere dup executarea instruciunilor de mai


jos?
strncpy(s,strstr("informatica","form"),strlen("BAC009"));
s[6]='\0';
(4p.)

a.

format

b.

b.

2 4 7 8

informat

c.

c.

2 4 6

inform

d.

d.

2 4 6 7 8

informBAC

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


3.

4.

5.

Determinai ultima valoare (notat cu ?) din vectorului de tai (0, 1, 1, 2, 3, 3, ?) astfel


nct arborele cu 7 noduri, numerotate de la 1 la 7, descris de acest vector, s aib pe
fiecare nivel n exact 2n noduri, nodul rdcin fiind pe nivelul n=0, i fiecare nod s aib cel
mult doi descendeni. Scriei matricea de adiacen a unui arbore astfel definit.
(6p.)
pentru i1,5 execut
n secvena alturat, i i j sunt variabile
pentru j1,5 execut
ntregi iar T este o matrice ptratic format din
dac (i*j)%2=0 atunci
5 linii i 5 coloane numerotate de la 1 la 5. Care T [(i*j)/2]
i,j
va fi suma elementelor de pe diagonala altfel
principal n urma executrii secvenei? (6p.) T i+j
i,j

Scriei un program C/C++ care citete de la tastatur un numr natural n (1n6) apoi
construiete n memorie o matrice cu n linii i n coloane, astfel nct parcurgnd liniile
matricei de sus n jos i de la stnga la dreapta se obin, n prima linie primele n numere ale
irului Fibonacci n ordine cresctoare, n linia a doua urmtoarele n numere ale irului
Fibonacci n ordine descresctoare, n linia a treia urmtoarele n numere ale acestui ir n
ordine cresctoare, i aa mai departe, ca n exemplu. Elementele irului Fibonacci se obin
astfel: primul element este 0, al doilea este 1, iar elementele urmtoare se obin nsumnd
cele dou elemente care preced elementul curent. Astfel, primele 16 elemente ale acestui ir
sunt: 0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233, 377, 610.
1
1
2
Programul afieaz pe ecran matricea obinut, cte o linie a 0
8
5
3
matricei pe cte o linie a ecranului, elementele fiecrei linii fiind 13
21 34 55 89
separate prin cte un spaiu.
Exemplu: pentru n=4 se obine matricea alturat.
(10p.) 610 377 233 144

BACALAUREAT 2009 - INFORMATIC, limbajul C/C++


Specializarea Matematic-informatic

Subiectul II

Ministerul Educaiei, Cercetrii i Inovrii


Centrul Naional pentru Curriculum i Evaluare n nvmntul Preuniversitar

88

Subiectul II (30 de puncte) - Varianta 088


Pentru fiecare dintre itemii 1 i 2 scriei pe foaia de examen litera care corespunde
rspunsului corect.
1: 2 6 8
1.
Care este numrul de noduri de grad 1 ale grafului neorientat 2: 1 3
cu 8 noduri numerotate de la 1 la 8, reprezentat prin listele de 3: 2 4 7
adiacen alturate?
4: 3 5
(4p.) 5: 4
6: 1
7: 3
8: 1
a.
2.

a.
b.
c.
d.

b.

c.

d.
6
struct elev{
Fie declarrile alturate. Dac variabila x retine
char nume[30];
informaii despre 30 de elevi, precizai care este
float media;};
varianta corect ce afieaz numele i media
elevului al 11-lea?
(4p.) elev x[30];
cout<<x[10].nume<< <<x[10].media;
| printf(%s %f, x[10].nume,x[10].media);
cout<<x.nume<< <<x.media;
| printf(%s %f, x.nume,x.media);
cout<<x.nume[10]<< <<x.media;
| printf(%s %f, x.nume[10],x.media);
cout<<x[10]->nume<< << x[10]->media);
| printf(%s %f, x[10]->nume,x[10]->media);

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


0 1 0 0 0 1
3.
Se consider un arbore cu 6 noduri, numerotate de la 1 la 6, 1 0 1 1 1 0
reprezentat prin matricea de adiacen dat alturat. Scriei toate 0 1 0 0 0 0
nodurile care pot fi alese ca rdcin a arborelui astfel nct acesta 0 1 0 0 0 0
s aib un numr minim de frunze.
(6p.) 0 1 0 0 0 0
1 0 0 0 0 0
pentru i1,5 execut
4.
n secvena alturat, i i j sunt variabile
pentru j1,5 execut
ntregi, iar T este o matrice ptratic format
dac (i+j)%2=0 atunci Ti,j(i*j)-5
din 5 linii i 5 coloane, numerotate de la 1 la
altfel Ti,ji+j
5.
Care
va
fi
valoarea
expresiei
T1,5+T2,4+T3,3+T4,2+T5,1 n urma executrii
secvenei?
(6p.)
5.

Scriei un program C/C++ care citete de la tastatur un numr natural n (1n20),


elementele unei matrice cu n linii i n coloane, numere ntregi din intervalul [-100,100],
construiete n memorie matricea i apoi afieaz pe ecran media aritmetic a elementelor
strict pozitive ale matricei, care sunt situate deasupra diagonalei principale, ca n exemplu.
Dac nu exist elemente strict pozitive situate deasupra diagonalei principale, programul va
afia mesajul NU EXISTA .
Exemplu: pentru n=4 i matricea alturat se afieaz valoarea -1 2 -4 5
0 6 3 1
2.75 (sunt luate n considerare doar elementele marcate).
2 4 2 0
(10p.)
3 -5 1 -3

BACALAUREAT 2009 - INFORMATIC, limbajul C/C++


Specializarea Matematic-informatic

Subiectul II

Ministerul Educaiei, Cercetrii i Inovrii


Centrul Naional pentru Curriculum i Evaluare n nvmntul Preuniversitar

87

Subiectul II (30 de puncte) - Varianta 087


Pentru fiecare dintre itemii 1 i 2 scriei pe foaia de examen litera care corespunde
rspunsului corect.
1.

Cte muchii are graful neorientat cu 6 noduri numerotate de la 1:


2:
1 la 6, reprezentat prin lista de adiacene alturat?
3:
(4p.) 4:
5:
6:

6
5

2.

Ce valoare are variabila s de tip ir de caractere dup executarea instruciunilor de mai


jos?
strncpy(s,strstr("Informatica","form"),strlen("BAC08")); s[5]='\0';
(4p.)

a.

form

b.

forma

c.

InfoBAC

d.

Infor

c.

12

6
3 4 5

a.

b.

2
1
2
2
2
1
d.

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


0 1 0
3.
Se consider un arbore cu 6 noduri, numerotate de la 1 la 6, 1 0 1
reprezentat prin matricea de adiacen dat alturat. Scriei toate 0 1 0
nodurile care pot fi alese ca rdcin a arborelui astfel nct acesta 0 1 0
s aib un numr maxim de frunze.
(6p.) 0 1 0
1 0 0

0
1
0
0
0
0

0
1
0
0
0
0

1
0
0
0
0
0

4.

n secvena alturat, i, j i n sunt variabile ntregi, iar for(i=1; i<=n; i++)


T este o matrice ptratic format din n linii i n coloane for(j=1; j<=n; j++)
if ((i*j)%2==0)
numerotate de la 1 la n. Care este suma elementelor de
T[i][j]=(i*j)-n;
sub diagonala principal (excluznd elementele care se
else T[i][j]=i+j;
afl pe diagonala principal), n urma executrii
secvenei, dac n=5?
(6p.)

5.

Scriei un program C/C++ care citete de la tastatur un ir de cel mult 100 de caractere,
care pot fi litere ale alfabetului englez, cifre, semne de punctuaie i spaii, i transform irul
citit nlocuind toate literele mici cu literele mari corespunztoare i toate literele mari cu
literele mici corespunztoare. Programul va afia pe o linie a ecranului irul rezultat n urma
acestor nlocuiri, iar pe urmtoarea linie a ecranului numrul de caractere care au rmas
nemodificate.
Exemplu: dac irul citit este:
Ana-Maria are 3 frati.
programul va afia
aNA-mARIA ARE 3 FRATI.
6

BACALAUREAT 2009 - INFORMATIC, limbajul C/C++


Specializarea Matematic-informatic

(10p.)

Subiectul II

Ministerul Educaiei, Cercetrii i Inovrii


Centrul Naional pentru Curriculum i Evaluare n nvmntul Preuniversitar

86

Subiectul II (30 de puncte) - Varianta 086


Pentru fiecare dintre itemii 1 i 2 scriei pe foaia de examen litera care corespunde
rspunsului corect.
1.

Care este suma gradelor grafului neorientat cu 4 noduri 0 1 1


numerotate de la 1 la 4, reprezentat prin matricea de 1 0 1
1 1 0
adiacen alturat?
1 0 0
(4p.)

a.

2.

Ce valoare are variabila s de tip ir de caractere dup executarea instruciunilor de mai jos?
strncpy(s,strstr(examen,am),4); s[4]='\0';
(4p.)

a.

amen

b.

b.

10

exam

c.

c.

menn

d.

d.

1
0
0
0
8

men

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


3.
4.

5.

Reprezentai grafic arborele cu 6 noduri, numerotate de la 1 la 6, definit prin urmtorul vector


"de tai": (0, 1, 1, 1, 3, 3).
(6p.)
pentru i1,3 execut
n secvena alturat, i i j sunt variabile ntregi,
pentru j1,5 execut
iar T este o matrice format din 3 linii i 5 coloane
dac (i+j)%2=0 atunci
numerotate de la 1 la 3, respectiv de la 1 la 5. Ce T
i,j (-1)*(i+j)
valoare are elementul maxim al acestei matrice, n altfel
urma executrii secvenei?
(6p.) T
i,j i+j

Scriei un program C/C++ care citete de la tastatur un numr natural n (1n10) apoi
construiete n memorie o matrice cu 2*n linii i 2*n coloane, numerotate de la 1 la 2*n,
astfel nct parcurgnd doar liniile impare ale matricei de sus n jos i fiecare linie impar de
la stnga la dreapta se obin n ordine strict cresctoare toate numerele impare cuprinse n
intervalul [1,4*n2], iar parcurgnd doar liniile pare ale matricei de sus n jos i fiecare linie
par de la dreapta la stnga se obin n ordine strict cresctoare toate numerele pare
cuprinse n intervalul [1,4*n2], ca n exemplu.
Programul afieaz pe ecran matricea obinut, cte o linie a matricei pe 1 3 5 7
cte o linie a ecranului, elementele fiecrei linii fiind separate prin cte un 8 6 4 2
9 11 13 15
spaiu.
Exemplu: pentru n=2 se obine matricea alturat.
(10p.) 16 14 12 10

BACALAUREAT 2009 - INFORMATIC, limbajul C/C++


Specializarea Matematic-informatic

Subiectul II

Ministerul Educaiei, Cercetrii i Inovrii


Centrul Naional pentru Curriculum i Evaluare n nvmntul Preuniversitar

85

Subiectul II (30 de puncte) - Varianta 085


Pentru fiecare dintre itemii 1 i 2 scriei pe foaia de examen litera care corespunde
rspunsului corect.
1.

Se consider graful orientat cu vrfurile numerotate de la 1 la 7 i arcele (1,2),


(1,7), (2,3), (3,2), (3,4), (4,3), (5,4), (5,6), (6,4), (7,6). Cte
noduri cu gradul extern par exist n graful dat?
(4p.)

a.

2.

Un arbore cu 9 noduri, numerotate de la 1 la 9, este memorat cu ajutorul vectorului de tai


t=(9,3,4,7,3,9,0,7,2). Lungimea celui mai lung lan elementar care pornete din
rdcin este:
(4p.)

a.

b.

b.

c.

c.

d.

d.

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


3.

Scriei secvena de program C/C++ care struct persoana


citete de la tastatur numele, prenumele i { char nume[40];
char prenume[40];
salariul unei persoane, memorate de variabila
int salariu;
p, declarat alturat.
(6p.)
}p;

4.

Se consider un graf neorientat cu 5 noduri, n care nodurile au urmtoarele grade:


1,2,1,1,1. tiind c graful are dou componente conexe, scriei matricea de adiacen a
acestuia.
(6p.)

5.

Scriei un program C/C++ care citete de la tastatur un numr natural n (1n10) i n2


numere ntregi mai mici dect 32000, reprezentnd elementele unui tablou bidimensional A
cu n linii i n coloane i apoi n2 numere ntregi mai mici dect 32000 reprezentnd
elementele unui tablou bidimensional B cu n linii i n coloane. Programul construiete n
memorie i afieaz pe ecran tabloul C, cu n linii i n coloane, construit dup regulile de mai
jos, ca n exemplu:
- elementele de deasupra diagonalei principale sunt comune cu ale matricei A, situate pe
acealeai poziii
- elementele de pe diagonala principal sunt egale cu cel mai mic dintre elementele situate
pe aceleai poziii n matricele A i respectiv B
- elementele situate sub diagonala principal sunt egale cu ale matricei B, situate pe
aceleai poziii
Fiecare linie a matricei se afieaz pe cte o linie a ecranului, iar elementele de pe aceeai
linie sunt separate prin cte un spaiu.
(10p.)
1 2 3 4 i matricea B: 9 12 3 6 se obine
1 2 3 4
Exemplu:
5 6 7 8
8 2 6 5 matricea C:
8 2 7 8
pentru n=4
4 10 60 12
4 10 11 12
i matricea A: 9 15 11 12
1 8 7 5
0 9 5 3
0 9 5 3

BACALAUREAT 2009 - INFORMATIC, limbajul C/C++


Specializarea Matematic-informatic

Subiectul II

Ministerul Educaiei, Cercetrii i Inovrii


Centrul Naional pentru Curriculum i Evaluare n nvmntul Preuniversitar

84

Subiectul II (30 de puncte) - Varianta 084


Pentru fiecare dintre itemii 1 i 2 scriei pe foaia de examen litera care corespunde
rspunsului corect.
1.

Se consider graful neorientat cu nodurile numerotate de la 1 la 6 i avnd muchiile


[1,2], [1,4], [2,3], [3,5], [3,6], [4,5], [5,6]. Cte lanuri elementare distincte
exist de la nodul 1 la nodul 6 n graful dat? Dou lanuri sunt distincte dac difer prin cel
puin o muchie.
(4p.)

a.

2.

Un arbore cu 9 noduri, numerotate de la 1 la 9, este memorat cu ajutorul vectorului de tai


t=(9,3,4,7,3,9,0,7,2). Numrul tuturor descendenilor nodului 2 este:
(4p.)

a.

b.

b.

c.

c.

d.

d.

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


3.

Se consider variabila c, de tip char, care memoreaz o liter a alfabetului englez, diferit
de z sau Z. Scriei secvena de program C/C++ care afieaz pe ecran litera care i
urmeaz n alfabet.
Exemplu: dac litera memorat este g se va afia h.
(6p.)

4.

Scriei secvena de program C/C++ care struct elev {


char nume[40];
afieaz pe ecran numele, prenumele i
char prenume[40];
media unui elev, reinute de variabila el,
float mediabac;
declarat alturat.
(6p.)
}el;

5.

Scriei programul C/C++ care citete de la tastatur un numr natural n (1n10), apoi n*n
numere ntregi, mai mici dect 32000, reprezentnd elementele unui tablou bidimensional
cu n linii i n coloane, i care determin i afieaz pe ecran ultima cifr a produsului
numerelor pare de pe diagonala principal a tabloului sau mesajul imposibil dac nu
exist numere pare.
(10p.)

BACALAUREAT 2009 - INFORMATIC, limbajul C/C++


Specializarea Matematic-informatic

Subiectul II

Ministerul Educaiei, Cercetrii i Inovrii


Centrul Naional pentru Curriculum i Evaluare n nvmntul Preuniversitar

83

Subiectul II (30 de puncte) - Varianta 083


Pentru fiecare dintre itemii 1 i 2 scriei pe foaia de examen litera care corespunde
rspunsului corect.
1.

Se consider graful orientat cu nodurile numerotate de la 1 la 5 i arcele (1,2), (1,4),


(2,1), (2,5), (3,2), (4,3), (5,1), (5,4). Care este numrul minim de arce care
poate fi adugat pentru ca toate nodurile s aib i gradul extern i gradul intern numere
pare?
(4p.)

a.

b.

c.

d.

2.

Se consider o coad n care au fost introduse, n aceast ordine, numerele 1, 2 i 3. Care


dintre valorile din coad va fi eliminat prima?
(4p.)

a.

b.

c.

d.

oricare dintre ele

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


3.

Se consider un graf neorientat cu 5 noduri, n care nodurile au urmtoarele grade:


2,2,2,1,1. tiind c graful are dou componente conexe, scriei matricea de adiacen a
acestuia.
(6p.)

4.

Variabila cuv reine un cuvnt format din cel mult 25 litere mici ale alfabetului englez. Scriei
o secven de program C/C++ care afieaz pe ecran vocalele cuvntului, n ordinea
apariiei lor n cuvnt.
Exemplu: dac cuv reine cuvntul examen se afieaz eae
(6p.)

5.

Scriei un program C/C++ care citete de la tastatur o valoare natural nenul n (n10) i
apoi n*n numere ntregi distincte, fiecare avnd cel mult 4 cifre, reprezentnd elementele
unui tablou bidimensional cu n linii i n coloane. Programul determin cel mai mic i cel mai
mare numr de pe diagonala secundar, le interschimb, apoi afieaz pe ecran matricea
obinut dup modificare. Fiecare linie a matricei se afieaz pe cte o linie a ecranului, iar
elementele unei linii sunt separate prin cte un spaiu.
(10p.)
2 24 15 -8 se va afia
2 24 15 17
Exemplu: pentru n=4 i tabloul:
3 25 17 9
3 25 -8 9
4 -2 73 10
4 -2 73 10
5 14 12 10
5 14 12 10

BACALAUREAT 2009 - INFORMATIC, limbajul C/C++


Specializarea Matematic-informatic

Subiectul II

Ministerul Educaiei, Cercetrii i Inovrii


Centrul Naional pentru Curriculum i Evaluare n nvmntul Preuniversitar

82

Subiectul II (30 de puncte) - Varianta 082


Pentru fiecare dintre itemii 1 i 2 scriei pe foaia de examen litera care corespunde
rspunsului corect.
1.

Se consider graful orientat cu nodurile numerotate de la 1 la 5 i arcele (1,2),


(1,5),(2,1), (2,3), (2,5), (3,4), (5,2), (5,4). Care este lungimea maxim a unui
drum format din noduri distincte, de la nodul 1 la nodul 4?
(4p.)

a.

2.

Se consider o stiv n care au fost introduse, n aceast ordine, numerele 1, 2 i 3. Care


dintre valorile din stiv va fi eliminat prima?
(4p.)
2
3
1
b.
c.
d. oricare dintre ele

a.

b.

c.

d.

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


3.

tiind c variabila s reine un ir de caractere,


scriei ce se va afia la executarea secvenei
alturate.
(6p.)

4.

Un graf neorientat cu nodurile numerotate de la 1 la 4 este reprezentat 0 1 1


1 0 0
prin matricea de adiacen alturat.
a) Scriei nodurile din acest graf care au grad par.
(3p.) 1 0 0
b) Scriei nodurile din acest graf care au grad impar.
(3p.) 0 0 1

5.

Scriei un program C/C++ care citete de la tastatur o valoare natural nenul n (n10) i
apoi n*n numere ntregi distincte, fiecare avnd cel mult 4 cifre, reprezentnd elementele
unui tablou bidimensional cu n linii i n coloane. Programul determin cel mai mic i cel mai
mare numr de pe diagonala principal, le interschimb, apoi afieaz pe ecran matricea
obinut dup modificare. Fiecare linie a matricei se afieaz pe cte o linie a ecranului, iar
elementele unei linii sunt separate prin cte un spaiu.
(10p.)
2 24 15 -8 se va afia
73 24 15 -8
Exemplu: pentru n=4 i tabloul:
3 25 17 9
3 25 17 9
4 -2 73 10
4 -2 2 10
5 14 12 10
5 14 12 10

BACALAUREAT 2009 - INFORMATIC, limbajul C/C++


Specializarea Matematic-informatic

strcpy(s,barba);
for(i=0;i<strlen(s);i++)
if(s[i]==b)
s[i]=t;
cout<<s; | printf(%s,s);
0
0
1
0

Subiectul II

Ministerul Educaiei, Cercetrii i Inovrii


Centrul Naional pentru Curriculum i Evaluare n nvmntul Preuniversitar

81

Subiectul II (30 de puncte) - Varianta 081


Pentru fiecare dintre itemii 1 i 2 scriei pe foaia de examen litera care corespunde
rspunsului corect.
1.

tiind c s-au fcut declarrile alturate, stabilii struct elev{


char nume[30];
care dintre urmtoarele expresii este corect din
float nota;} a[100];
punct de vedere sintactic?
(4p.)

a.

elev[1].nota

2.

Graful neorientat cu 5 noduri numerotate de la 1 la 5, este


reprezentat cu ajutorul matricei de adiacen alturate. Numrul
maxim de muchii ce pot fi eliminate astfel nct graful parial rezultat
s aib 2 componente conexe este:
(4p.)

a.

b.

b.

a[1].nota[1]

c.

c.

a.nota[1]

d.
0
1
1
1
1
d.

a[1].nota
1
0
1
1
0

1
1
0
1
0

1
1
1
0
1

1
0
0
1
0

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


3.

ntr-o coad ale crei elemente rein informaii numere ntregi, au fost introduse, n aceast
ordine, numerele 6,5,4,3,2,1. Asupra cozii se efectueaz, n aceast ordine,
urmtoarele operaii: se elimin un element, se adaug dou elemente cu valorile 6 i
respectiv 7 i apoi se elimin trei elemente. Care sunt ultimele trei valori eliminate?
(6p.)

4.

Variabila cuv reine un cuvnt format din cel mult 25 litere mici ale alfabetului englez. Scriei
o secven de program C/C++ care afieaz pe ecran litera din mijloc a cuvntului, dac
acesta are un numr impar de caractere, sau cele dou litere din mijloc ale cuvntului, dac
acesta are un numr par de caractere.
Exemplu: dac se citete cuvntul mihai se afieaz litera h.
(6p.)

5.

Scriei un program C/C++ care citete de la tastatur dou numere naturale n i m (n10,
m10), apoi elementele unui tablou bidimensional cu n linii i m coloane, numere ntregi
distincte, de maximum 4 cifre fiecare, i care determin cel mai mic i cel mai mare numr
din tablou i le interschimb. Matricea modificat va fi afiat pe ecran, cte o linie a
matricei pe o linie a ecranului, elementele fiecrei linii fiind separate prin cte un spaiu.
Exemplu: pentru n=5, 2
3
m=4 i tabloul
4
5
6

24
25
-2
14
57

-5
17
13
12
36

8
9
10
70
43

BACALAUREAT 2009 - INFORMATIC, limbajul C/C++


Specializarea Matematic-informatic

se va afia tabloul

2
3
4
5
6

24
25
-2
14
57

70
17
13
12
36

(10p.)
8
9
10
-5
43

Subiectul II

Ministerul Educaiei, Cercetrii i Inovrii


Centrul Naional pentru Curriculum i Evaluare n nvmntul Preuniversitar

80

Subiectul II (30 de puncte) - Varianta 080


Pentru fiecare dintre itemii 1 i 2 scriei pe foaia de examen litera care corespunde
rspunsului corect.
1.

n secvena de program alturat, variabila a for(i = 1; i<=8; i++)


memoreaz o matrice cu 8 linii i 8 coloane
{ k=i;
(numerotate de la 1 la 8), cu elemente numere
for(j = 1; j<=8; j++)
ntregi, iar toate celelalte variabile sunt ntregi.
Ce valoare va avea elementul a[8][8] dup
{ a[i][j]=k; k=k+1; }
executarea secvenei?
(4p.)
}

a. 16
2.

b. 15

c. 64

d. 10

Se consider un graf neorientat cu 7 noduri, numerotate de la 1 la 7, cu proprietatea c


exist muchie cu extremitile n nodurile i i respectiv j dac numerele i i j sunt de
aceeai paritate sau dac i este divizor al lui j. Gradul minim al unui nod din acest graf
este:
(4p.)

a. 1

b.

c.

d.

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


3.

Fie graful orientat cu 9 vrfuri numerotate de la 1 la 9 i arcele (1,2) (2,3) (3,1)


(4,5) (5,6) (5,7) (6,7) (7,4) (8,7) (8,9) (9,8). Care sunt vrfurile cu
proprietatea c gradul interior este egal cu gradul exterior ?
(6p.)

4.

ntr-o coad ale crei elemente rein informaii numere ntregi, au fost introduse, n aceast
ordine, numerele 6,5,4,3,2,1. Asupra cozii se efectueaz, n aceast ordine,
urmtoarele operaii: se elimin dou elemente, se adaug dou elemente cu valorile 6 i
respectiv 7 i apoi se elimin dou elemente. Care sunt ultimele trei valori eliminate? (6p.)

5.

Scriei programul C/C++ care citete de la tastatur un cuvnt cu cel puin una i cel mult
20 de litere ale alfabetului englez, construiete i afieaz pe ecran cuvntul obinut prin
interschimbarea primei consoane cu ultima vocal din cuvnt. n cazul n care cuvntul este
format numai din vocale sau numai din consoane, programul afieaz pe ecran mesajul
IMPOSIBIL. Se consider vocale literele a, e, i, o, u, A, E, I, O, U.
Exemplu: dac se citete cuvntul Marmorat se va obine i afia cuvntul aarmorMt
(10p.)

BACALAUREAT 2009 - INFORMATIC, limbajul C/C++


Specializarea Matematic-informatic

Subiectul II

Ministerul Educaiei, Cercetrii i Inovrii


Centrul Naional pentru Curriculum i Evaluare n nvmntul Preuniversitar

79

Subiectul II (30 de puncte) - Varianta 079


Pentru fiecare dintre itemii 1 i 2 scriei pe foaia de examen litera care corespunde
rspunsului corect. foaia de examen litera corespunztoare rspunsului corect.
1.

Variabila t memoreaz o matrice cu 8 linii i 8 z=0;


coloane, numerotate de la 0 la 7, cu elemente for(i=0;i<8;i++)
for(j=7-i;j<8;j++)
numere ntregi, iar celelalte variabile sunt
z=z+t[i][j];
ntregi. Secvena de program alturat
determin, n urma executrii ei, memorarea n
variabila ntreag z a sumei tuturor elementelor
situate:
(4p.)

a.

sub diagonala secundar,


diagonala secundar

c.

strict sub diagonala principal

2.

Se consider un graf orientat cu 6 vrfuri, numerotate de la 1 la 6, cu proprietatea c exist


un arc cu extremitea iniial n vrful i i extremitea final n vrful j dac i este divizor al
lui j. Gradul interior (intern) maxim al vrfurilor din acest graf este:
(4p.)

a.

b.

inclusiv b.

d.

c.

deasupra diagonalei principale, inclusiv


diagonala principal
strict deasupra diagonalei secundare

d.

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


3.

Se consider arborele cu 13 noduri numerotate de la 1 la 13 i mulimea muchiilor


{[1,4],[2,5],[3,8],[4,7],[4,9],[4,11],[6,3], [6,10], [6,12], [5,6],
[13,2], [2,9]}. Dac se alege nodul numerotat cu 2 drept rdcin, care este
vectorul de tai pentru acest arbore?
(6p.)

4.

Fie graful neorientat cu 6 noduri numerotate de la 1 la 6 i muchiile [1,2], [1,3], [1,4],


[2,3], [2,4], [3,4], [3,5], [4,5], [4,6], [5,6]. Care este numrul maxim de muchii
care pot fi eliminate astfel nct graful parial obinut s i pstreze proprietatea de graf
conex?
(6p.)

5.

Scriei programul C/C++ care citete de la tastatur un text cu cel mult 100 de caractere
(litere ale alfabetului englez i spaii), construiete n memorie i apoi afieaz pe ecran
irul de caractere obinut din irul iniial n care se insereaz dup fiecare vocal caracterul
*. Se consider vocale literele a, e, i, o, u, A, E, I, O, U. Dac textul citit nu conine vocale,
se va afia mesajul FARA VOCALE.
Exemplu: dac se citete de la tastatur textul Examenul de bacalaureat se va afia:
E*xa*me*nu*l de* ba*ca*la*u*re*a*t.
(10p.)

BACALAUREAT 2009 - INFORMATIC, limbajul C/C++


Specializarea Matematic-informatic

Subiectul II

Ministerul Educaiei, Cercetrii i Inovrii


Centrul Naional pentru Curriculum i Evaluare n nvmntul Preuniversitar

78

Subiectul II (30 de puncte) - Varianta 078


Pentru fiecare dintre itemii 1 i 2 scriei pe foaia de examen litera care corespunde
rspunsului corect.
1.

Variabila t memoreaz o matrice cu 8 linii i 8 z=0;


coloane, numerotate de la 0 la 7, cu elemente for(i=0;i<8;i++)
for(j=0;j<8-i;j++)
numere ntregi, iar celelalte variabile sunt
z=z+t[i][j];
ntregi. Secvena de program alturat
determin n urma executrii ei, memorarea n
variabila ntreag z a sumei tuturor elementelor
situate:
(4p.)

a.

strict sub diagonala secundar

c.

deasupra diagonalei secundare, inclusiv d.


diagonala secundar

2.

Un graf neorientat are 40 de noduri si 40 de muchii. Numrul minim i numrul maxim de


componente conexe ale grafului este
(4p.)

a.

1, respectiv 30

b.

1, respectiv 31

b.

c.

deasupra diagonalei principale, inclusiv


diagonala principal
strict deasupra diagonalei secundare

1, respectiv 40

d.

2, respectiv 30

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


3.

Fie graful orientat cu 7 vrfuri numerotate de la 1 la 7 i arcele (1,2) (2,3) (3,1)


(4,5) (5,6) (5,7) (6,7) (7,4). Care este numrul minim de arce i care sunt acele
arce care ar trebui eliminate pentru ca graful parial obinut s nu mai conin circuite? (6p.)

4.

ntr-o coad ale crei elemente rein informaii numere ntregi, au fost introduse, n aceast
ordine, numerele 1,2,3,4,5. Asupra cozii se efectueaz, n aceast ordine, urmtoarele
operaii: se elimin un element, se adaug dou elemente cu valorile 6 i respectiv 7 i apoi
se elimin 2 elemente, se adaug elementul cu valoarea 8 i se elimin un element.
a) Care este valoarea ultimului element eliminat?
(3p.)
b) Care este suma elementelor alfate n coad dup efectuarea acestor operaii?
(3p.)

5.

Scriei programul C/C++ care citete de la tastatur un text cu cel mult 100 de caractere i
un cuvnt cu cel mult 15 litere. Pe ecran se va afia irul obinut prin inserarea n textul
iniial a caracterului ? dup fiecare apariie a cuvntului citit. Literele textului i ale cuvntului
sunt litere mici ale alfabetului englez. Dac n text nu apare cuvntul citit, se va afia
mesajul NU APARE.
Exemplu: dac se citete de la tastatur textul
examenului examenul de bacalaureat si examenul de atestat
i cuvntul examenul
se va afia:
examenului examenul? de bacalaureat si examenul? de atestat
(10p.)

BACALAUREAT 2009 - INFORMATIC, limbajul C/C++


Specializarea Matematic-informatic

Subiectul II

Ministerul Educaiei, Cercetrii i Inovrii


Centrul Naional pentru Curriculum i Evaluare n nvmntul Preuniversitar

77

Subiectul II (30 de puncte) - Varianta 077


Pentru fiecare dintre itemii 1 i 2 scriei pe foaia de examen litera care corespunde
rspunsului corect.
1.

Variabila t memoreaz o matrice cu 8 linii i 8 z=0;


coloane, numerotate de la 0 la 7, cu elemente for(i=0;i<8;i++)
for(j=0;j<i;j++)
numere ntregi, iar variabilele i i j sunt ntregi.
z=z+t[i][j];
Secvena de program alturat determin n
urma executrii ei, memorarea n variabila
ntreag z a sumei tuturor elementelor situate:
(4p.)

a.

strict sub diagonala principal

b.

deasupra diagonalei principale, inclusiv


diagonala principal

c.

strict deasupra diagonalei principale

d.

strict deasupra diagonalei secundare

2.

Numrul minim de noduri cu gradul 1 pentru un graf neorientat conex cu 21 noduri i 20


muchii este:
(4p.)

a.

11

b.

c.

d.

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


3.

Care sunt noduri de grad 1 din arborele cu rdcin, cu 7 noduri, numerotate de la 1 la 7,


descris prin urmtorul vector de tai: (5,1,4,5,0,4,3)
(6p.)

4.

ntr-o stiv ale crei elemente rein informaii numere ntregi, au fost introduse, n aceast
ordine, numerele 5,4,3,2,1. Asupra stivei se efectueaz urmtoarele operaii: se elimin
2 elemente, se adaug un element cu valoarea 6 i apoi se elimin 3 elemente.
a) Care este valoarea memorat n elementul din vrful stivei dup efectuarea operaiilor n
ordinea precizat?
(3p.)
b) Care este suma valorilor aflate n stiv dup efectuarea acestor operaii?
(6p.)

5.

Scriei programul C/C++ care citete de la tastatur un text de cel mult 50 de caractere,
(litere mici ale alfabetului englez i spaii), text format din mai multe cuvinte, separate prin
cte un spaiu, i afieaz pe ecran textul obinut din cel iniial prin transformarea primei
litere i a ultimei litere a fiecrui cuvnt n majuscul.
Exemplu: dac se citete textul
azi este examen de bacalaureat
se va afia
AzI EstE ExameN DE BacalaureaT

BACALAUREAT 2009 - INFORMATIC, limbajul C/C++


Specializarea Matematic-informatic

(10p.)

Subiectul II

Ministerul Educaiei, Cercetrii i Inovrii


Centrul Naional pentru Curriculum i Evaluare n nvmntul Preuniversitar

76

Subiectul II (30 de puncte) - Varianta 076


Pentru fiecare dintre itemii 1 i 2 scriei pe foaia de examen litera care corespunde
rspunsului corect. foaia de examen litera corespunztoare rspunsului corect.
1.

n secvena de program alturat variabila t x=0;


memoreaz o matrice cu 5 linii i 5 coloane, for(i=0;i<5;i++)
for(j=i+1;j<5;j++)
numerotate de la 0 la 4, cu elemente
x=x+t[i][j];
numere ntregi, iar celelalte variabile sunt
ntregi. Executarea acestei secvene de
program determin memorarea n variabila
x a sumei elementelor situate:
(4p.)

a.

deasupra diagonalei principale, inclusiv b.


diagonala principal

strict deasupra diagonalei principale

c.

strict sub diagonala principal

strict deasupra diagonalei secundare

2.

Fie graful orientat cu 8 vrfuri, numerotate de la 1 la 8, i arcele (1,2), (2,3), (3,1),


(4,5), (6,5), (5,7), (7,6), (7,4), (8,7). Numrul minim de arce care trebuie
adugate astfel nct, pentru oricare dou vrfuri x i y din graf s existe cel puin un drum
de la nodul x la nodul y este:
(4p.)

a.

b.

d.

c.

d.

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


ntr-o stiv ale crei elemente rein informaii numere ntregi, au fost introduse, n aceast
3.
ordine, numerele 1,2,3,4. Asupra stivei se efectueaz, n aceast ordine, urmtoarele
operaii: se elimin un element, se adaug dou elemente cu valorile 5 i respectiv 6 i apoi
se elimin 3 elemente.
a) Care este valoarea memorat n elementul din vrful stivei dup efectuarea acestor
operaii?
(3p.)
b) Care este suma elementelor aflate n stiv dup efectuarea acestor operaii?
(3p.)
4.

Care este vectorul de tai pentru arborele cu 8 noduri, numerotate de la 1 la 8, i muchiile


[1,5], [2,3], [3,6], [3,8], [4,6], [5,7], [6,7], dac se alege ca rdcin nodul
numerotat cu 6?
(6p.)

5.

Scriei programul C/C++ care citete de la tastatur un cuvnt de maximum 20 de litere i


minimum o liter i afieaz pe ecran cuvntul citit precum i toate cuvintele obinute din
cuvntul citit prin eliminarea primei i a ultimei litere. Prima prelucrare se refer la cuvntul
citit, iar urmtoarele la cuvntul rezultat din prelucrarea anterioar. Procedeul de eliminare i
afiare se va repeta pn cnd se obine cuvntul vid, ca n exemplu. Cuvntul iniial i
fiecare cuvnt obinut se va afia pe cte o linie a ecranului.
Exemplu : dac se citete cuvntul bacalaureat, se va afia:
bacalaureat
acalaurea
calaure
alaur
lau
a

BACALAUREAT 2009 - INFORMATIC, limbajul C/C++


Specializarea Matematic-informatic

(10p.)

Subiectul II

Ministerul Educaiei, Cercetrii i Inovrii


Centrul Naional pentru Curriculum i Evaluare n nvmntul Preuniversitar

75

Subiectul II (30 de puncte) - Varianta 075


Pentru fiecare dintre itemii 1 i 2 scriei pe foaia de examen litera care corespunde
rspunsului corect.
1.

Ce se va afia n urma executrii secvenei for(i = 0; i < strlen(x); i++)


if(x[i] >= A && x[i] <=N)
de program alturate tiind c i este o
x[i] = x[i] + a-A;
variabil de tip ntreg, iar variabila x
memoreaz iniial irul de caractere cout << x;
ExAMeNe?
(4p.)

a.

exAmeNe

2.

Se consider graful neorientat cu 6 noduri, numerotate de la 1


la 6 definit prin listele de adiacent alturate. Cte muchii
trebuie adugate n acest graf astfel nct el s devin graf
complet?
(4p.)

a.

16

b.

b.

ExAmene

14

c.

c.

EXAMENE

d.
1: 3
2: 3
3: 1
4: 2
5: 1
6: 2
d.

examene
5
4 6
2 5
6
3
4.
8

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


3.

Se consider o coad n care iniial au fost introduse, n aceast ordine, elementele 1, 2 i


3. Se noteaz cu ADD x operaia prin care se adaug informaia x n coad i cu ELIM
operaia prin care se elimin un nod din coad. Completai punctele de suspensie din
secvena urmtoare cu operaiile necesare astfel nct n urma executrii secvenei: ADD 4;
ELIM; ELIM; ... ADD 6; ... ADD 7;
coada s conin, n aceast ordine,
elementele: 4, 5, 6, 7.
(6p.)

4.

Se consider graful orientat cu 7 vrfuri, numerotate de la 1 la 7, i arcele (1,2), (2,5),


(3,2), (3,4), (3,6), (5,6), (5,7), (6,1). Care este numrul minim de arce care trebuie
adugate acestui graf astfel nct, pentru orice dou noduri x i y, din mulimea {1,2,3,4}
s existe cel puin un drum de la x la y? Enumerai arcele care trebuie adugate.
(6p.)

5.

Scriei programul C/C++ care citete de la tastatur dou valori naturale m i n (1<m, n<51)
i construiete n memorie i apoi afieaz o matrice cu m linii, numerotate de la 1 la m, i n
coloane, numerotate de la 1 la n; liniile matricei, dou cte dou, sunt completate alternativ
numai cu 0 sau numai cu 1, ca n exemplu. Astfel,
- elementele liniei 1 i 2 sunt egale cu 0;
- elementele liniei 3 i 4 sunt egale cu 1;
- elementele liniei 5 i 6 sunt egale cu 0; i aa mai departe.
Matricea astfel obinut se va afia pe ecran, cte o linie a matricei 0 0 0 0 0
pe o linie a ecranului, cu cte un spaiu ntre elementele fiecrei 0 0 0 0 0
1 1 1 1 1
linii.
1 1 1 1 1
Exemplu: pentru m = 7 i n = 5 se va afia matricea alturat.
(10p.) 0 0 0 0 0
0 0 0 0 0
1 1 1 1 1

BACALAUREAT 2009 - INFORMATIC, limbajul C/C++


Specializarea Matematic-informatic

Subiectul II

Ministerul Educaiei, Cercetrii i Inovrii


Centrul Naional pentru Curriculum i Evaluare n nvmntul Preuniversitar

74

Subiectul II (30 de puncte) - Varianta 074


Pentru fiecare dintre itemii 1 i 2 scriei pe foaia de examen litera care corespunde
rspunsului corect.
1.

Se consider o stiv n care iniial au fost introduse, n aceast ordine, elementele 5, 6 i


10. Dac se noteaz cu PUSH x operaia prin care se adaug elementul cu informaia
x n stiv, i cu POP operaia prin care se elimin un nod din stiv, care este rezultatul
executrii secvenei PUSH 1; POP; POP; PUSH 8; PUSH 6; PUSH 5; POP; POP;
(4p.)

a.

b.

c.

d.

2.

Ce se va afia n urma if(strcmp(x, y) > 0)


cout << x; | printf(%s,x);
executrii
secvenei
de
else
program alturate dac
if(strcmp(x,y) < 0)
variabila
x
memoreaz
cout << y; | printf(%s,y);
cuvntul bacalaureat, iar
else
variabila y
memoreaz
cout << imposibil; | printf(imposibil);
cuvntul banal?
(4p.)

a.

imposibil

b.

bacalaureat

c.

banal

d.

bacalaureatimposibil

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


3.

Se consider un arbore cu 9 noduri, numerotate de la 1 la 9, i cu vectorul de tai urmtor:


(8, 8, 8, 2, 6, 2, 9, 0, 2).
a) Enumerai descendenii nodului 2.
(3p.)
b) Cte noduri de tip frunz are acest arbore?
(3p.)

4.

Se consider graful neorientat cu 6 noduri, numerotate de la 1 la 6 i urmtoarele muchii:


[1,3] [1,5] [2,3] [2,4] [2,6] [5,3] [6,4].
a) Care este numrul minim de muchii ce trebuie eliminate din acest graf, astfel nct graful
parial obinut s nu conin niciun ciclu?
(3p.)
b) Care este numrul minim de muchii ce trebuie eliminate din graful iniial dat, astfel nct
graful parial obinut s aib exact dou componente conexe?
(3p.)

5.

Scriei programul C/C++ care citete de la tastatur o valoare natural n (2n100),


construiete n memorie i apoi afieaz pe ecran o matrice a, cu n linii i n coloane,
numerotate de la 1 la n, n care fiecare linie conine toate numerele naturale, de la 1 la n ,
dispuse dup cum urmeaz: pe liniile de indice impar numerele sunt n ordine cresctoare,
iar pe cele de indice par sunt n ordine descresctoare, ca n exemplu.
Matricea se va afia pe ecran, cte o linie a matricei pe o linie a ecranului, 1 2 3 4
4 3 2 1
elementele unei linii fiind separate ntre ele prin cte un spaiu.
Exemplu: pentru n = 4 se va afia matricea alturat.
(10p.) 1 2 3 4
4 3 2 1

BACALAUREAT 2009 - INFORMATIC, limbajul C/C++


Specializarea Matematic-informatic

Subiectul II

Ministerul Educaiei, Cercetrii i Inovrii


Centrul Naional pentru Curriculum i Evaluare n nvmntul Preuniversitar

73

Subiectul II (30 de puncte) - Varianta 073


Pentru fiecare dintre itemii 1 i 2 scriei pe foaia de examen litera care corespunde
rspunsului corect.
1.

Se consider arborele cu 12 noduri, numerotate de la 1 la 12, definit prin urmtorul vectori


de tai: (4, 8, 0, 3, 10, 1, 8, 3, 2, 4, 7, 10). Care dintre nodurile arborelui au exact un
descendent direct (fiu)?
(4p.)

a.

6, 9, 11

b.

1, 2, 7

c.

5, 12, 6, 9, 11
struct A {
Se consider declarrile alturate. Care este
int x;
tipul expresiei x.x.y ?
(4p.)
char y;
float z;};

d.
10, 1, 2, 7
struct B {
struct A x;
long y;};
B x, y;.

float

b.

int

c.

d.

2.

a.

long

char

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


3.

Se consider graful orientat cu 6 noduri, numerotate de la 1 la 6, i arcele (1,2), (1,5),


(1,6), (2,3), (4,3), (4,5), (6,5). Care este numrul minim de arce care trebuie
adugate grafului astfel nct acesta s conin cel puin un circuit elementar de lungime 4?
Pentru graful rezultat, dai un exemplu de astfel de circuit.
(6p.)

4.

Variabilele n, i, p i q sunt de tip ntreg, iar variabila a memoreaz un tablou bidimensional


cu n linii i n coloane numerotate de la 1 la n (0<n<50), cu elemente numere reale.
nlocuii punctele de suspensie din secvena de program
for(i = 1; i <= n; i++)
alturat cu instruciunile corespunztoare, astfel nct, n
{........}
urma executrii acesteia, s se interschimbe elementele
liniei q cu elementele liniei p ale tabloului a (1qn,
1pn). Dac sunt necesare i alte variabile, scriei
declarrile acestora.
(6p.)

5.

Se consider un text avnd maximum 255 de caractere, format numai din litere mici ale
alfabetului englez i spaii, n care oricare dou cuvinte alturate n text sunt desprite
printr-un singur spaiu. Ultimul caracter din text este diferit de spaiu.
Scriei un program C/C++ care citete de la tastatur un text ca cel descris mai sus i
afieaz pe ecran, desprite printr-un spaiu, numrul de cuvinte din text i cte dintre
acestea au prima liter vocal (a, e, i, o sau u).
Exemplu: pentru urmtoarul text ele sunt eleve in clasa a opta
se va afia: 7 5
(10p.)

BACALAUREAT 2009 - INFORMATIC, limbajul C/C++


Specializarea Matematic-informatic

Subiectul II

Ministerul Educaiei, Cercetrii i Inovrii


Centrul Naional pentru Curriculum i Evaluare n nvmntul Preuniversitar

72

Subiectul II (30 de puncte) - Varianta 072


Pentru fiecare dintre itemii 1 i 2 scriei pe foaia de examen litera care corespunde
rspunsului corect.
1.

Fie arborele cu 9 noduri etichetate cu numere naturale de la 1 la 9 i cu muchiile: [2,4]


[2,6] [5,7] [6,3] [6,8] [7,1] [7,2] [7,9]. Ci vectori de tai distinci se pot
construi pentru acest arbore? Doi vectori de tai sunt distinci dac exist cel puin o poziie
pentru care elementele corespunztoare din cei doi vectori sunt distincte.
(4p.)

a.

2.

Variabilele x i s memoreaz iruri cu cel mult 20 de caractere: x memoreaz irul


primavara, iar variabila s memoraz irul anotimp. Ce se va memora n variabila s n
urma executrii instruciunii de mai jos?
strncat(s, x, 5);
(4p.)

a.

anotimpprima

b.

anotimpprimavara

c.

primavara

d.

prima

b.

9!

c.

d.

10

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


3.

Se consider un graf neorientat cu 8 noduri, numerotate de la 1 la 8 i muchiile: [1,4],


[1,8], [2,1], [2,3], [3,1], [4,5], [4,7], [5,7], [6,5]. Precizai cte
componente conexe va avea subgraful obinut prin eliminarea nodului 1.
(6p.)

4.

Se consider graful orientat cu 5 noduri, numerotate de la 1 la 5, definit


prin matricea de adiacen alturat. Indicai numrul minim de arce
care trebuie adugate grafului astfel nct, pentru orice dou noduri x i
y ale sale, s existe cel puin un drum de la x la y.
(6p)

5.

Scriei programul C/C++ care citete de la tastatur o valoare natural n (2n24) i


construiete n memorie, apoi afieaz pe ecran o matrice a cu n linii i n coloane, simetric
fa de diagonala secundar. Elementele matricei sunt numerele naturale de la 1 la

0
0
0
0
0

1
0
1
0
0

0
1
0
1
0

0
1
1
0
0

0
1
0
0
0

n(n + 1)
. Elementele situate deasupra i pe diagonala secundar sunt dispuse n ordine
2

cresctoare pe linii astfel: prima linie conine numerele de la 1 la n, a doua linie conine
numerele de la n + 1 la 2*n 1 i aa mai departe. Matricea se va afia pe ecran, cte o
linie a matricei pe o linie a ecranului, elementele unei linii fiind separate ntre ele printr-un
spaiu.
1 2 3 4
Exemplu: pentru n = 4 se va obine matricea alturat.
(10p.) 5 6 7 3
8 9 6 2
10 8 5 1

BACALAUREAT 2009 - INFORMATIC, limbajul C/C++


Specializarea Matematic-informatic

Subiectul II

Ministerul Educaiei, Cercetrii i Inovrii


Centrul Naional pentru Curriculum i Evaluare n nvmntul Preuniversitar

71

Subiectul II (30 de puncte) - Varianta 071


Pentru fiecare dintre itemii 1 i 2 scriei pe foaia de examen litera care corespunde
rspunsului corect.
1.

Care este numrul maxim de noduri frunz pe care le poate avea un arbore cu rdcin cu
15 noduri?
(4p.)

a.

2.

Se d graful orientat definit prin matricea de


adiacen alturat. Precizai cte noduri ale
grafului au gradul interior egal cu gradul
exterior.
(4p.)

a.

b.

b.

15

14

c.

c.

0
1
1
0
0
0

1
0
1
0
0
0
3

0
1
0
0
1
0

1
0
0
0
0
0

0
0
0
1
0
1

d.

d.

0
0
1
0
1
0

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


3.

Se consider o stiv S1, iniial vid,


n care s-au introdus n ordine valorile
a,b,c,d,e,f,g,h i o alt stiv S2, iniial vid. Care va fi elementul din vrful stivei S1 i
care va fi elementul din vrful stivei S2 dac se extrag jumtate din elementele din stiva S1
i se adaug n ordinea extragerii n stiva S2?
(6p.)

4.

Fiecare dintre variabilele declarate alturat memoreaz numele struct elev{


char nume[20];
i nota cte unui elev.
float nota;
Scriei secvena de instruciuni prin care se citesc de la tastatur
};
numele i nota pentru fiecare dintre variabilele e1 i e2 i apoi
se afieaz numele elevului cu nota cea mai mare. Dac cele elev e1,e2;
dou medii sunt egale, se va afia numele elevului memorat n
variabila e1.
(6p.)

5.

Scriei programul C/C++ care citete de la tastatur o valoare natural n (2n100),


construiete n memorie i apoi afieaz pe ecran o matrice a cu n linii i n coloane,
numerotate de la 1 la n, care conine numerele naturale, n ordine cresctoare, de la 1 la n2,
dispuse pe coloane, n ordine cresctoare. Astfel coloana 1 va conine numerele de la 1 la
n, coloana 2 numerele de la n+1 la 2*n, coloana 3 de la 2*n+1 la 3*n i aa mai departe,
ca n exemplu.
Matricea se va afia pe ecran, cte o linie a matricei pe cte o linie a 1 5 9 13
ecranului, elementele fiecrei linii fiind separate ntre ele prin cte un 2 6 10 14
3 7 11 15
spaiu.
Exemplu: pentru n = 4 se va afia matricea alturat.
(10p.) 4 8 12 16

BACALAUREAT 2009 - INFORMATIC, limbajul C/C++


Specializarea Matematic-informatic

Subiectul II

Ministerul Educaiei, Cercetrii i Inovrii


Centrul Naional pentru Curriculum i Evaluare n nvmntul Preuniversitar

70

Subiectul II (30 de puncte) - Varianta 070


Pentru fiecare dintre itemii 1 i 2 scriei pe foaia de examen litera care corespunde
rspunsului corect.
1.

tiind c fiecare dintre variabilele var1, var2 memoreaz numele struct elev
i nota unui elev n forma dat de declararea alturat, indicai { char nume[30];
float nota;
care dintre urmtoarele expresii atribuie variabilei reale m media
}var1,var2;
aritmetic a notelor celor doi elevi.
(4p.)

a.

m=(var1.nota+var2.nota)/2;

b.

m=var1.nota+var2.nota/2;

c.

m=(var1+var2).nota/2;

d.

m=nota(var1+var2)/2;

2.

Se consider graful neorientat reprezentat prin listele de adiacen


alturate.
Care este numrul minim de muchii care trebuie eliminate astfel
nct graful s aib dou componente conexe?
(4p.)

a.

b.

c.

1:
2:
3:
4:
5:

2,4,5
1,3
2,5,4
1,3
3,1
d.

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


3.

Care este vectorul de tai asociat arborelui cu rdcin din


figura alturat n care nodul 5 este nodul rdcin?
(6p.)

4.

Considerm s o variabil de tip ir de caractere declarat astfel: char s[100];


tiind c aceast variabil memoreaz un cuvnt oarecare, scriei o instruciune n limbajul
C/C++, care permite afiarea pe ecran a ultimului caracter din cuvntul memorat n s. (6p.)

5.

Scriei programul C/C++ care citete de la tastatur dou numere naturale m i n (1m24,
1n24), un numr natural x (1xm) i apoi m*n numere naturale de cel mult 5 cifre ce
reprezint elementele unui tablou bidimensional a, cu m linii, numerotate de la 1 la m, i n
coloane, numerotate de la 1 la n. Programul va determina construirea n memorie a matricei
apoi eliminarea liniei cu numrul de ordine x din matrice, modificarea corespunztoare a
numrului de linii din matrice i afiarea matricei obinute n urmtorul format: cte o linie a
matricei pe cte o linie a ecranului, elementele fiecrei linii fiind separate prin cte un
spaiu.
(10p.)
11 21 31 41
Exemplu: pentru m=3, n=4, 11 21 31 41 se va afia matricea
91 11 21 31
51 61 71 81
x=2 i matricea alturat
91 11 21 31

BACALAUREAT 2009 - INFORMATIC, limbajul C/C++


Specializarea Matematic-informatic

Subiectul II

Ministerul Educaiei, Cercetrii i Inovrii


Centrul Naional pentru Curriculum i Evaluare n nvmntul Preuniversitar

69

Subiectul II (30 de puncte) - Varianta 069


Pentru fiecare dintre itemii 1 i 2 scriei pe foaia de examen litera care corespunde
rspunsului corect.
1.

Cum se poate accesa prima liter a numelui unui struct elev{


elev ale crui date de identificare sunt memorate char nume[20],prenume[20];
int varsta;}e;
n variabila e, declarat alturat?
(4p.)

a.

e->nume[0]

b.

e.nume[0]

c.

elev.nume[0]

d.

nume.e[0]

2.

Se consider un graf neorientat conex cu ase noduri n care fiecare nod are gradul 2. Care este
numrul minim de muchii care trebuie eliminate din acest graf astfel nct graful parial rezultat s
aib dou componente conexe?
(4p.)

a.

b.

c.

d.

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


3.

Care este vectorul de tai asociat arborelui cu


rdcin din figura alturat n care nodul 1 este nodul
rdcin?
(6p.)

4.

Fie s i t dou variabile de tipul ir de caractere. Scriei o secven de instruciuni C/C++ prin
care variabilei t i se atribuie irul format din primele n caractere ale lui s.
(6p.)

5.

Scriei programul C/C++ care citete de la tastatur un numr natural n (1n50) i n* n


numere naturale de cel mult 5 cifre ce reprezint elementele unui tablou bidimensional a, cu
n linii i n coloane, i verific dac matricea este triunghiular superior. Programul va afia
pe ecran mesajul corespunztor: Este triunghiular superior respectiv Nu
este triunghiular superior. O matrice se numete triunghiular superior dac
toate elementele aflate sub diagonala principal a ei sunt nule.
(10p.)
1 2 3
Exemplu: pentru n=3 i matricea alturat se va afia mesajul:
0 5 6
Este triunghiular superior
0 0 9

BACALAUREAT 2009 - INFORMATIC, limbajul C/C++


Specializarea Matematic-informatic

Subiectul II

Ministerul Educaiei, Cercetrii i Inovrii


Centrul Naional pentru Curriculum i Evaluare n nvmntul Preuniversitar

68

Subiectul II (30 de puncte) - Varianta 068


Pentru fiecare dintre itemii 1 i 2 scriei pe foaia de examen litera care corespunde
rspunsului corect.
1.

Cum se poate accesa prima liter a denumirii unui material ale struct material{
crui caracteristici sunt memorate n variabila m, declarat char denumire[20];
alturat?
(4p.) int pret;} m;

a.

denumire.m[0]

b.

m->denumire[0]

c.

material.denumire[0]

d.

m.denumire[0]

2.

Se consider graful neorientat cu matricea de adiacent alturat. 0 1 1


Care este numrul minim de muchii care trebuie eliminate astfel 1 0 0
nct graful s aib dou componente conexe?
(4p.) 1 0 0
0 1 1
1 1 1

a.

b.

c.

d.

0
1
1
0
1

1
1
1
1
0

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


3.

Care este vectorul de tai asociat arborelui cu


rdcin din figura alturat n care nodul 5 este nodul
rdcin?
(6p.)

4.

Care este funcia predefinit, n limbajul C/C++, care returneaz lungimea efectiv a unui ir
de caractere transmis ca parametru?
(6p.)

5.

Scriei programul C/C++ care citete de la tastatur dou numere naturale m i n


(1m50, 1n50) i m* n numere ntregi de cel mult 5 cifre ce reprezint elementele
unui tablou bidimensional, i afieaz pe ecran ultima cifr a produsului elementelor pozitive
aflate pe linii cu numere de ordine pare i coloane cu numere de ordine impare.
Numerotarea liniilor, respectiv a coloanelor se va face ncepnd cu valoarea 1. Dac nu
exist elemente pozitive aflate pe linii cu numere de ordine pare i coloane cu numere de
ordine impare, se va afia mesajul NU EXISTA.
(10p.)
11
-21
31
41
Exemplu: pentru m=4, n=4 i matricea alturat se va afia 5
5 -61 71 -81
(care reprezint ultima cifr a valorii 355=5*71).
91 11 21 31
-11 31 -41
0

BACALAUREAT 2009 - INFORMATIC, limbajul C/C++


Specializarea Matematic-informatic

Subiectul II

Ministerul Educaiei, Cercetrii i Inovrii


Centrul Naional pentru Curriculum i Evaluare n nvmntul Preuniversitar

67

Subiectul II (30 de puncte) - Varianta 067


Pentru fiecare dintre itemii 1 i 2 scriei pe foaia de examen litera care corespunde
rspunsului corect.
1.

Cum se poate accesa prima liter a numelui unei struct persoana{


persoane ale crei date de identificare sunt char nume[20],prenume[20];
memorate n variabila p, declarat alturat? (4p.) int varsta;} p;

a.

p.nume[0]

b.

persoana.nume[0]

c.

p->nume[0]

d.

nume.p[0]

2.

Se consider un graf neorientat cu patru noduri n care fiecare nod are gradul 2. Care este
numrul minim de muchii care trebuie eliminate astfel nct graful s aib dou componente
conexe?
(4p.)

a.

b.

c.

d.

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


3.

Un arbore cu rdcin avnd 8 noduri, numerotate de la 1 la 8, este memorat cu ajutorul vectorului


de tai t=(8,8,0,3,4,3,4,6). Scriei care sunt descendenii nodului 4?
(6p.)

4.

Se consider secvena alturat n care a este o matrice for(i=1;i<=4;i++)


ptratic cu 4 linii i 4 coloane, numerotate de la 1 la 4, iar for(j=1;j<=4;j++)
i i j sunt variabile de tip ntreg. Care este matricea a if (i<=j) a[i][j]=i;
else a[i][j]=j;
obinut dup executarea secvenei?
(6p.)

5.

Scriei programul C/C++ care citete de la tastatur un cuvnt format din cel mult 50
caractere, litere mari ale alfabetului englez, i afieaz pe ecran, fiecare pe cte o linie,
toate sufixele acestuia, n ordine cresctoare a lungimilor. Un sufix de lungime k al unui
cuvnt este un subir format din ultimele k caractere ale acestuia.
(10p.)
Exemplu: dac se citete cuvntul EXAMEN se vor afia sufixele :
N
EN
MEN
AMEN
XAMEN
EXAMEN

BACALAUREAT 2009 - INFORMATIC, limbajul C/C++


Specializarea Matematic-informatic

Subiectul II

Ministerul Educaiei, Cercetrii i Inovrii


Centrul Naional pentru Curriculum i Evaluare n nvmntul Preuniversitar

66

Subiectul II (30 de puncte) - Varianta 066


Pentru fiecare dintre itemii 1 i 2 scriei pe foaia de examen litera care corespunde
rspunsului corect.
1.

Cum se poate accesa prima liter a denumirii unui struct produs{


char denumire[15];
produs ale crui caracteristici sunt memorate n
int pret;}p;
variabila p, declarat alturat?
(4p.)

a.

produs.denumire[0]

b.

denumire.p[0]

c.

p.denumire[0]

d.

P->denumire[0]

2.

Se consider un graf neorientat complet cu trei noduri. Care este numrul minim de muchii care
trebuie eliminate din acest graf astfel nct graful parial rezultat s aib dou componente
conexe?
(4p.)

a.

b.

c.

d.

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


3.

Un arbore cu rdcin avnd 9 noduri, numerotate de la 1 la 9, este memorat cu ajutorul


vectorului de tai t=(2,5,5,3,0,2,4,1,1). Scriei toi ascendenii nodului 4.
(6p.)

4.

Se consider secvena alturat n care mat este un for(j=1;j<=5;j++)


tablou bidimensional cu 5 linii i 5 coloane, numerotate {aux=mat[x][j];
de la 1 la 5, iar aux, j, x, y sunt variabile de tip ntreg. mat[x][j]=mat[y][j];
tiind c orice element al tabloului este iniial egal cu mat[y][j]=aux;}
numrul de ordine al liniei pe care se afl, precizai care
sunt elementele tabloului mat dup executarea secvenei
alturate dac x memoreaz valoarea 2 i y memoreaz
valoarea 4?
(6p.)

5.

Scriei programul C/C++ care citete de la tastatur un cuvnt format din cel mult 50 de
caractere, litere mari ale alfabetului englez, i afieaz pe ecran, fiecare pe cte o linie,
toate prefixele acestuia, n ordine cresctoare a lungimilor. Un prefix de lungime k al unui
cuvnt este un subir format din primele k caractere ale acestuia.
(10p.)
Exemplu: dac se citete cuvntul BACALAUREAT se vor afia prefixele:
B
BA
BAC
BACA
BACAL
BACALA
BACALAU
BACALAUR
BACALAURE
BACALAUREA
BACALAUREAT

BACALAUREAT 2009 - INFORMATIC, limbajul C/C++


Specializarea Matematic-informatic

Subiectul II

Ministerul Educaiei, Cercetrii i Inovrii


Centrul Naional pentru Curriculum i Evaluare n nvmntul Preuniversitar

65

Subiectul II (30 de puncte) - Varianta 065


Pentru fiecare dintre itemii 1 i 2 scriei pe foaia de examen litera care corespunde
rspunsului corect.
Se consider un graf G neorientat conex cu 54 de noduri i 53 de muchii.
Care din urmtoarele afirmaii este adevrat?
(4p.)
a. G nu este arbore
b. Prin eliminarea unei muchii din G se
menine proprietatea de conexitate
c. G nu are cicluri
d. Gradul maxim al unui nod din G poate fi
52

1.

2.

Dac variabila s de tip char[15] memoreaz irul INFORMATICA atunci strlen(s) are
valoarea
(4p.)

a. 10

b. 12

c. 1

d. 11

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


3.

Un arbore cu rdcin, cu 8 noduri, numerotate de la 1 la 8, este memorat cu ajutorul


vectorului de tai T=(0,1,1,1,3,5,3,3).
Care sunt fraii nodului 7?

(6p.)

4.

Se consider o stiv S1, iniial vid, n care s-au introdus n ordine valorile a,b,c,d,e,f i
o alt stiv S2, iniial vid, n care au fost introduse, n ordine, valorile g,h. Care va fi
elementul din vrful stivei S1 i care va fi elementul din vrful stivei S2 dac se extrag
jumtate din elementele din stiva S1 i se adaug n ordinea extragerii n stiva S2?
(6p.)

5.

Scriei un program n limbajul C/C++ care citete de la tastatur dou valori naturale n i m
(1n24, 1m24) i construiete n memorie un tablou bidimensional cu n linii i m coloane
format din toate numerele naturale de la 1 la n*m, ca n exemplu. Programul va afia pe
ecran, pe n linii, tabloul obinut, elementele fiecrei linii fiind separate prin cte un spaiu.
1

Exemplu: pentru n=4 i m=5 se va afia:

10 9 8 7 6
11 12 13 14 15
20 19 18 17 16

(10p.)

BACALAUREAT 2009 - INFORMATIC, limbajul C/C++


Specializarea Matematic-informatic

Subiectul II

Ministerul Educaiei, Cercetrii i Inovrii


Centrul Naional pentru Curriculum i Evaluare n nvmntul Preuniversitar

64

Subiectul II (30 de puncte) - Varianta 064


Pentru fiecare dintre itemii 1 i 2 scriei pe foaia de examen litera care corespunde
rspunsului corect.
1.

Considernd declarrile alturate, care dintre struct punct{float x,y;};


urmtoarele referiri este corect din punct de vedere struct fig
sintactic ?
(4p.) { char tip;
punct a,b,c;}
fig e;

a.

e.fig.tip

2.

Se consider un tablou bidimensional a cu n linii i n x=0;


coloane, numerotate de la 1 la n, cu elemente for(i=1;i<=n;i++)
x=x+a[i][i];
numere ntregi. Ce reprezinta valoarea variabilei
ntregi x, dup executarea secvenei de program
alturate?
(4p.)

a.

Suma elementelor de
principal a tabloului a

pe

diagonala b.

c.

Suma elementelor tabloului a

d.

b.

a.e

c.

e.punct.x

d.

e.a.x

Suma elementelor de
secundar a tabloului a

pe

diagonala

Cel mai mare element de pe diagonala


principal a tabloului a

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


1:
2:
3:
4:
5:

2
1
1
2
3

3
3 4
2 4 5
3 5
4

3.

Se consider un graf neorientat reprezentat prin listele de adiacen


alturate. Construii matricea de adiacen corespunztoare grafului
dat.
(6p.)

4.

ntr-un graf orientat G cu 6 vrfuri numerotate cu numere distincte de la 1 la 6, exist arc de la


vrful i la vrful j dac i numai dac i<j i j-i>1. Care sunt vrfurile din graf ce au
gradul interior mai mare dect gradul exterior?
(6p.)

5.

Scriei un program C/C++ care citete de la tastatur un text format din cel mult 200 de
litere ale alfabetului englez, n care cuvintele sunt separate printr-un singur spaiu i
afieaz pe ecran numrul de cuvinte din textul citit, care au prima, respectiv ultima liter,
vocal. n cazul n care n text nu exist un astfel de cuvnt, se va afia pe ecran mesajul
NU EXISTA. Se consider vocal orice liter din mulimea {a,A,e,E,i,I,o,O,u,U}.
Exemplu: dac textul introdus este:
Eratostene a sugerat ca anii bisecti se repeta la fiecare patru ani
pe ecran se va afia :
4
(10p.)

BACALAUREAT 2009 - INFORMATIC, limbajul C/C++


Specializarea Matematic-informatic

Subiectul II

Ministerul Educaiei, Cercetrii i Inovrii


Centrul Naional pentru Curriculum i Evaluare n nvmntul Preuniversitar

63

Subiectul II (30 de puncte) - Varianta 063


Pentru fiecare dintre itemii 1 i 2 scriei pe foaia de examen litera care corespunde
rspunsului corect.
1.

Se consider un arbore G, cu rdcin, memorat cu ajutorul vectorului de tai urmtor:


T=(2,0,4,2,4,7,2). Care dintre urmtoarele afirmaii este adevrat?
(4p.)

a.

Nodurile 1,4 i 6 sunt frai.

c.

Prin eliminarea muchiei [6,7] se obine d.


un graf parial, conex.

2.

Se consider un tablou bidimensional a, format din numere x=a[n][1];


naturale, cu n linii i n coloane, numerotate de la 1 la n. Ce for(i=n;i>=1;i--)
if (x<a[i][n-i+1])
reprezinta valoarea variabilei x, dup executarea secvenei
x=a[i][n-i+1];
de program alturate?
(4p.)

a.

cel mai mare numr de pe diagonalele b.


tabloului a

cel mai mare numr de pe diagonala


secundar a tabloului a

c.

cel mai mare numr de pe diagonala d.


principal a tabloului a

cel mai mare numr din tabloul a

b.

G este conex i prin eliminarea unei


muchii oarecare din G, graful obinut nu
este conex.
Arborele G are 5 frunze.

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


3.

Care dintre vrfurile grafului orientat din


figura alturat, au gradul interior un numr
par?
(6p.)

4.

Se consider variabilele s1 i s2 care memoreaz fiecare cte un ir de maximum 50 de


caractere. Scriei secvena de instruciuni care, n urma executrii, afieaz cele dou iruri
de caractere n ordinea cresctoare a lungimilor lor.
(6p.)

5.

Scriei un program n limbajul C/C++ care citete de la tastatur dou valori naturale n i
m(1n24, 1m24) i construiete n memorie un tablou bidimensional cu n linii i m
coloane format din toate numerele naturale de la 1 la n*m, ca n exemplu. Programul va
afia pe ecran, pe n linii, tabloul obinut, elementele fiecrei linii fiind separate prin cte un
spaiu. Exemplu: pentru n=5 i m=4 se va afia:

1
2

6
7

11 16
12 17

13 18

4 9 14 19
5 10 15 20

(10p.)

BACALAUREAT 2009 - INFORMATIC, limbajul C/C++


Specializarea Matematic-informatic

Subiectul II

Ministerul Educaiei, Cercetrii i Inovrii


Centrul Naional pentru Curriculum i Evaluare n nvmntul Preuniversitar

62

Subiectul II (30 de puncte) - Varianta 062


Pentru fiecare dintre itemii 1 i 2 scriei pe foaia de examen litera care corespunde
rspunsului corect.
1.

Care dintre urmtoarele afirmaii referitoare la graful


neorientat G, reprezentat n figura alturat, este
adevrat?
(4p.)

a.

Graful parial al lui G obinut prin b.


eliminarea muchiei [5,2] este un arbore

Graful nu conine cicluri

c.

Cel mai lung lan, care conine numai d.


noduri distincte, are lungimea 2

Numrul nodurilor de grad par este egal


cu numrul nodurilor de grad impar

2.

Considernd declarrile alturate, care dintre struct cerc


{float raza;
urmtoarele referiri este corect din punct de vedere
int x,y;};
sintactic ?
(4p.)
cerc c;

a.

cerc.x

b.

c.x

c.

c.cerc.x

d.

raza.x

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


3.

Se consider graful orientat G cu 6 vrfuri numerotate cu numerele de la 1


la 6, definit cu ajutorul listelor de adiacen alturate. Care este numrul
de circuite distincte din graful G? Dou circuite sunt distincte dac difer
prin cel puin un arc.
(6p.)

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

2 6
3
3
4 6
3

4.

Se consider o stiv S1, iniial vid, n care s-au introdus n ordine valorile a,b,c,d i o
alt stiv S2, iniial vid, n care au fost introduse, n ordine, valorile e,f,g,h. Care va fi
valoarea elementului din vrful stivei S1 i care va fi valoarea elementului din vrful stivei
S2 dac se extrag jumtate dintre elementele din stiva S2 i se adaug, n ordinea
extragerii, n stiva S1?
(6p.)

5.

Scriei un program C/C++ care citete de la tastatur un text de cel mult 255 de caractere,
dintre care cel puin unul este o liter mic a alfabetului englez, i afieaz pe ecran pe o
singur linie, desprite prin cte un spaiu, toate literele mici ale alfabetului englez care
apar n text. Fiecare liter va fi afiat o singur dat, n ordinea primei ei apariii n text.
(10p.)
Exemplu: pentru textul:
Pe ecran se va afia:
Calculati valoarea expresiei
a l c u t i v o r e x p s

BACALAUREAT 2009 - INFORMATIC, limbajul C/C++


Specializarea Matematic-informatic

Subiectul II

Ministerul Educaiei, Cercetrii i Inovrii


Centrul Naional pentru Curriculum i Evaluare n nvmntul Preuniversitar

61

Subiectul II (30 de puncte) - Varianta 061


Pentru fiecare dintre itemii 1 i 2 scriei pe foaia de examen litera care corespunde
rspunsului corect.
1.

Care este numrul de componente conexe ale grafului


neorientat G, din desenul alturat?
(4p.)

a.

2.

Care vor fi valorile afiate char s1[20]=variabila, s2[20]=varianta;


dup executarea secvenei if(strcmp(s1,s2)<0 && strlen(s1)<strlen(s2))
printf(%s %s,s1,s2); | cout<<s1<< <<s2;
alturate?
(4p.)
else
printf(%s %s,s2,s1); | cout<<s2<< <<s1;
variabila varianta
variantavariabila
b.
varianta variabila
variabila variabila
d.

a.
c.

b.

c.

d.

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


3.

Se consider un arbore cu rdcin, cu 100 noduri, numerotate de la 1 la 100.


a) Care este numrul de muchii din arbore?
b) Care este numrul total de cicluri pe care acesta l poate conine?

(3p.)
(3p.)

4.

Se consider o stiv, iniial vid, n care s-au introdus n ordine valorile x,z,y i o
coad, iniial vid, n care au fost introduse, n ordine, valorile a,b,c,d,e,f. Care va fi
elementul din vrful stivei dac se extrag toate elementele din coad i se adaug n
ordinea extragerii n stiv?
(6p.)

5.

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


construiete n memorie o matrice ptrat cu n linii i n coloane n care:
- ultima linie conine, n ordine, numerele 1,2,3,..,n
- elementele situate deasupra diagonalei principale sunt nule
- oricare alt element este obinut prin nsumarea elementelor vecine cu el, aflate pe linia
imediat urmtoare, pe aceeai coloan cu el sau pe una din coloanele alturate.
Programul va afia pe ecran matricea obinut pe n linii, elementele fiecrei linii fiind
separate prin cte un spaiu.
0
0
Exemplu: pentru n=4 pe ecran se va afia: 27 0
9
18 0
0
6
9
0
(10p.) 3
1
2
3
4

BACALAUREAT 2009 - INFORMATIC, limbajul C/C++


Specializarea Matematic-informatic

Subiectul II