Sunteți pe pagina 1din 100

Ministerul Educaiei, Cercetrii i Inovrii

Centrul Naional pentru Curriculum i Evaluare n nvmntul Preuniversitar

Subiectul II (30 de puncte) - Varianta 001


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

Se consider o coad n care iniial au fost introduse, n aceast ordine, elementele cu


1

. Se noteaz cu AD(x) operaia prin care se adaug elementul cu


valorile 1 i 2:
valoarea x n coad i cu EL operaia prin care se elimin un element din coad. Cte
elemente va conine coada n urma executrii secvenei de operaii:
AD(4);EL;EL;AD(5);EL;AD(3)?
(4p.)
a.

2.

Care este numrul maxim de componente conexe pe care le poate avea un graf neorientat
cu 20 noduri i 12 muchii?
(4p.)

a.

b.

b.

12

c.

c.

10

d.

d.

15

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


3.

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


{
memora coordonatele carteziene ale unui punct din planul xOy.
float x,y;
Scriei o secven de instruciuni prin executarea creia se
}
A,B;
calculeaz i se afieaz pe ecran distana dintre dou puncte ale
float
d;
cror coordonate sunt memorate de variabilele A i B.
(6p.)

4.

Pentru arborele reprezentat prin vectorul de tai T=(6,6,5,0,6,4,4,7), scriei care este
nodul cu cei mai muli fii i care sunt frunzele arborelui.
(6p.)

5.

Scriei un program C/C++ care citete de la tastatur dou numere naturale nenule n i m
(2m10, 2n10) i care construiete n memorie i apoi afieaz o matrice A cu n linii
(numerotate de la 1 la n) i m coloane (numerotate de la 1 la m) cu proprietatea c fiecare
element Aij memoreaz cea mai mic dintre valorile indicilor i i j (1in, 1jm).
Matricea se va afia pe ecran, cte o linie a matricei pe cte o linie a ecranului, elementele
fiecrei linii fiind separate prin cte un spaiu.
1 1 1 1 1
Exemplu: pentru n=4 i m=5 se va afia matricea alturat.
1 2 2 2 2
1 2 3 3 3
1 2 3 4 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

Subiectul II (30 de puncte) - Varianta 002


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

Cte grafuri neorientate, distincte, cu 4 vrfuri se pot construi? Dou grafuri se consider
distincte dac matricele lor de adiacen sunt diferite.
(4p.)
6
6
4
b. 2
c. 6
d. 4
a. 4

2.

Variabila t, declarat alturat, memoreaz n cmpurile struct triunghi


a, b i c lungimile laturilor unui triunghi. Care dintre
{
float a,b,c,p;
urmtoarele instruciuni atribuie cmpului p al variabilei
}t;
t valoarea perimetrului triunghiului respectiv?
(4p.)
b. p.t=a.t+b.t+c.t;
a. p.t=t.a+t.b+t.b;
t.p=t.a+t.b+t.c;
c.
d. t.p==t.a+t.b+t.c;

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, elementele cu valorile
1, 2 i 3. Se noteaz cu AD(x) operaia prin care se adaug elementul cu valoarea x n
vrful stivei i cu EL operaia prin care se elimin elementul din vrful stivei. Asupra acestei
stive se execut urmtoarea secven de operaii: AD(4);EL;AD(5);EL;AD(6);EL;EL.
a) Care este valoarea elementului din vrful stivei n urma executrii acestei secvene de
operaii?
(3p.)
b) Care este suma valorilor elementelor aflate n stiv n urma executrii acestei secvene de
operaii?
(3p.)

4.

5.

n secvena de program alturat, variabila a


memoreaz o matrice cu n linii i n coloane (numerotate
de la 0 la n-1) cu elemente numere ntregi, iar toate
celelalte variabile sunt ntregi. tiind c n este un numr
natural nenul i c pe fiecare linie a matricei se afl cel
puin un element nenul, scriei instruciunile care pot
nlocui punctele de suspensie din secvena de program
alturat astfel nct, n urma executrii acesteia, s se
afieze ultima cifr a produsului elementelor nenule de
pe linia k (0k<n) a matricei a.
(6p.)

p = 1;
for(j = 0; j < n; j++)
.............
printf("%d",p);|cout<<p;

Scriei un program C/C++ care citete de la tastatur un cuvnt format din cel mult 20 de
caractere, doar litere ale alfabetului englez. Programul determin transformarea cuvntului
citit prin eliminarea fiecrei litere mici a cuvntului, restul literelor nemodificndu-se, ca n
exemplu. Programul afieaz pe ecran cuvntul obinut. n cazul n care cuvntul citit
conine numai litere mici, programul va afia mesajul CUVANT VID.
Exemple:
- dac se citete cuvntul: baCALaUreaT se va afia pe ecran: CALUT
- dac se citete cuvntul: vara se va afia pe ecran: CUVANT VID

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

Subiectul II (30 de puncte) - Varianta 003


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

Se consider un graf orientat cu 6 noduri numerotate de la 1 la 6 i cu mulimea arcelor


format doar din arcele:
- de la fiecare nod numerotat cu un numr neprim i (i>1) la toate nodurile numerotate cu
numere ce aparin mulimii divizorilor proprii ai lui i (divizori diferii de 1 i de i)
- de la nodul numerotat cu 1 la nodul numerotat cu 6
- de la fiecare nod numerotat cu un numr prim i la nodul numerotat cu i-1
Pentru graful dat, cte dintre nodurile grafului au gradul exterior strict mai mare dect gradul
interior?
(4p.)

a.

2.

Cte frunze are arborele cu rdcin descris prin urmtorul vector de tai:
(6,5,5,2,0,3,3,3,8,7,7)?
(4p.)

a.

b.

b.

c.

c.

d.

d.

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


3.

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


{
memora numrtorul, respectiv numitorul unei fracii. Scriei
int x,y;
secvena de instruciuni prin executarea creia se construiete
}f,f1,f2;
n variabila f o fracie obinut prin nsumarea fraciilor
memorate n variabilele f1 i f2.
(6p.)

4.

n secvena de instruciuni de mai jos, variabila s memoreaz un ir de caractere format


doar din litere ale alfabetului englez, iar variabilele i i n sunt de tip int. tiind c n urma
executrii secvenei s-a afiat succesiunea de caractere eeleeeneee scriei care este
irul de caractere memorat de variabila s.
(6p.)
n=strlen(s);
for(i=0;i<n;i++)
printf("%c%c",s[i],e); | cout<<s[i]<<'e';

5.

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


construiete n memorie o matrice cu n linii i n coloane ale crei elemente vor primi valori
dup cum urmeaz:
- elementele aflate pe diagonala principal a matricei vor primi valoarea 0
- elementele de pe prima coloan, cu excepia celui aflat pe diagonala principal vor primi
valoarea n
- elementele de pe a doua coloan, cu excepia celui aflat pe diagonala principal vor primi
valoarea n-1
...
- elementele de pe ultima coloan, cu excepia celui aflat pe diagonala principal vor primi
valoarea 1
Programul va afia matricea astfel construit pe ecran, cte o linie a matricei 0 3 2 1
pe cte o linie a ecranului, cu cte un spaiu ntre elementele fiecrei linii (ca n 4 0 2 1
4 3 0 1
exemplu).
Exemplu: pentru n=4 se va afia matricea alturat.
(10p.) 4 3 2 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

Subiectul II (30 de puncte) - Varianta 004


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

Se consider un graf orientat cu 6 noduri numerotate de la 1 la 6 i cu mulimea arcelor


format doar din arcele:
- de la fiecare nod numerotat cu un numr neprim i (i>1) la toate nodurile numerotate cu
numere ce aparin mulimii divizorilor proprii ai lui i (divizori diferii de 1 i de i)
- de la nodul numerotat cu 1 la nodul numerotat cu 6
- de la fiecare nod numerotat cu un numr prim i la nodul numerotat cu i-1
Pentru graful dat, cte dintre nodurile grafului au gradul exterior egal cu gradul interior? (4p.)

a.

2.

Cte frunze are arborele cu rdcin, cu 8 noduri, numerotate de la 1 la 8, descris prin


urmtorul vector de tai: (6,5,5,2,0,3,3,3)?
(4p.)

a.

b.

b.

c.

c.

d.

d.

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,


elementele cu valorile 1, 2 i 3, ca n figura alturat. Se noteaz cu
AD(x) operaia prin care se adaug elementul cu valoarea x n vrful
stivei i cu EL operaia prin care se elimin elementul din vrful stivei.
Reprezentai, dup modelul alturat, coninutul stivei rezultat n urma
executrii secvenei de operaii: AD(4);EL;EL;AD(5);EL?
(6p.)

vrf

2
1

baza

4.

Fie s o variabil ce memoreaz un ir de caractere,


format doar din litere ale alfabetului englez, i i o
variabil de tip int. Scriei instruciunile ce pot
nlocui punctele de suspensie din secvena de
program alturat astfel nct executarea ei s
determine nlocuirea tuturor literelor mici din irul s
cu litera W i apoi afiarea irului obinut.
(6p.)

5.

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


construiete n memorie o matrice cu n linii i n coloane ale crei elemente vor primi valori
dup cum urmeaz:
- elementele aflate pe diagonala secundar a matricei vor primi valoarea 0
- elementele de pe prima linie, cu excepia celui aflat pe diagonala secundar vor primi
valoarea n
- elementele de pe a doua linie, cu excepia celui aflat pe diagonala secundar vor primi
valoarea n-1
...
- elementele de pe ultima linie, cu excepia celui aflat pe diagonala secundar vor primi
valoarea 1
Programul va afia matricea astfel construit pe ecran, cte o linie a matricei 4 4 4 0
pe cte o linie a ecranului, cu cte un spaiu ntre elementele fiecrei linii (ca 3 3 0 3
n exemplu).
2 0 2 2
Exemplu: pentru n=4 se va afia matricea alturat.
(10p.)
0 1 1 1

BACALAUREAT 2009 - INFORMATIC, limbajul C/C++


Specializarea Matematic-informatic

i=0;
while (i<strlen(s))
{
...............
}
printf("%s",s);| cout<<s;

Subiectul II

Ministerul Educaiei, Cercetrii i Inovrii


Centrul Naional pentru Curriculum i Evaluare n nvmntul Preuniversitar

Subiectul II (30 de puncte) - Varianta 005


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

ntr-un graf neorientat cu 10 muchii, fiecare nod are gradul un numr nenul. Doar trei dintre
noduri au gradul un numr par, restul nodurilor avnd gradele numere impare. Care este
numrul maxim de noduri pe care poate s le aib graful?
(4p.)

a.

14

2.

Variabila d, declarat alturat, memoreaz n cmpurile a i


b limea i, respectiv, lungimea unui dreptunghi. Care dintre
urmtoarele instruciuni atribuie cmpului aria al variabilei d
valoarea ariei dreptunghiului respectiv?
(4p.)

b.

17

c.

10

d.

16

struct dreptunghi
{
float a,b,aria;
}d;

a.

d.aria==d.a*d.b;

b.

aria.d=a.d*b.d;

c.

aria.d=d.a*d.b;

d.

d.aria=d.a*d.b;

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


3.

Se consider un arbore cu rdcin n care doar 13 dintre nodurile arborelui au exact 2


descendeni direci (fii), restul nodurilor avnd cel mult un descendent direct (fiu). Care este
numrul frunzelor arborelui?
(6p.)

4.

Fie s o variabil ce memoreaz un ir de caractere, c i d dou variabile ce memoreaz


cte un caracter, iar n i i variabile ntregi. Scriei instruciunile ce pot nlocui punctele de
suspensie din secvena de program de mai jos astfel nct executarea ei s determine
nlocuirea tuturor apariiilor caracterului memorat
n=strlen(s);
de variabila c n irul s cu caracterul memorat de
for(i=0;i<n;i++)
variabila d i apoi afiarea irului obinut. (6p.)
...............
printf("%s",s);| cout<<s;

5.

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


(2m10, 2n10) i care construiete n memorie i apoi afieaz o matrice A cu n linii
(numerotate de la 1 la n) i m coloane (numerotate de la 1 la m) cu proprietatea c fiecare
element Aij memoreaz cea mai mare dintre valorile indicilor i i j (1in, 1jm).
Matricea se va afia pe ecran, cte o linie a matricei pe cte o linie a ecranului, elementele
fiecrei linii fiind separate prin cte un spaiu.
(10p.)
Exemplu: pentru n=4 i m=5 se va afia matricea alturat.
1 2 3 4 5
.

BACALAUREAT 2009 - INFORMATIC, limbajul C/C++


Specializarea Matematic-informatic

(10p.) 2 2 3 4 5
3 3 3 4 5
4 4 4 4 5

Subiectul II

Ministerul Educaiei, Cercetrii i Inovrii


Centrul Naional pentru Curriculum i Evaluare n nvmntul Preuniversitar

Subiectul II (30 de puncte) - Varianta 006


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

n declararea alturat, cmpul a al structurii memoreaz struct p{


int a,b;} x,y;
numratorul, iar cmpul b memoreaz numitorul unei fracii.
int
t;
Care dintre urmtoarele secvene de instruciuni determin,
n urma executrii, interschimbarea numitorului fraciei x cu
(4p.)
numitorul fraciei y?

a.

t=x.b; x.b=y.b; y.b=t;

b.

t=b.x; b.x=b.y; b.y=t;

c.

x.b=y.b;

d.

b.x=b.y;

2.

Se consider un graf neorientat cu 10 noduri i 7 muchii. Care este numrul maxim de


componente conexe din care poate fi format graful?
(4p.)

a.

b.

c.

d.

10

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


3.

Care este numrul de muchii ale unui arbore cu 15 noduri?

4.

n secvena alturat se consider c variabila a


memoreaz un tablou bidimensional cu n linii i n
coloane, numerotate de la 0 la n-1, iar toate
celelalte variabile sunt ntregi. Ce valoare se va afia
n urma executrii secvenei, dac n=4, iar tabloul
are coninutul de mai jos?
1 2 3 4
5 6 7 8
9 1 2 3
4 5 6 7
(6p.)

5.

Se consider un text cu maximum 255 de caractere n care cuvintele sunt separate prin
unul sau mai multe spaii. Primul caracter din textul citit este o liter, iar cuvintele sunt
formate numai din litere mici ale alfabetului englez. Scriei un program C/C++ care citete
de la tastatur textul i l transform nlocuind prima liter a fiecrui cuvnt cu litera mare
corespunztoare, restul caracterelor rmnnd nemodificate. Textul astfel transformat va fi
afiat pe ecran.
Exemplu: dac de la tastatur se introduce textul: mare
frig rosu
se va afia pe ecran: Mare
Frig Rosu
(10p.)

BACALAUREAT 2009 - INFORMATIC, limbajul C/C++


Specializarea Matematic-informatic

(6p.)

p=0; u=n-1; s=0;


while (p<=u)
{ s=s+a[p][p]+a[u][u];
p=p+1; u=u-1;
}
cout<<s; | printf(%d,s);

Subiectul II

Ministerul Educaiei, Cercetrii i Inovrii


Centrul Naional pentru Curriculum i Evaluare n nvmntul Preuniversitar

Subiectul II (30 de puncte) - Varianta 007


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

Se consider tabloul bidimensional a cu n linii p=0;


numerotate de la 0 la n-1 i m coloane for (i=1;i<m;i++)
if (a[n-1][p]<a[n-1][i])
numerotate de la 0 la m-1. Ce reprezint
p=i;
elementul
a[n-1][p]
dup
executarea
secvenei de program alturate?
(4p.)

a.

cel mai mare element de pe linia n-1

b.

cel mai mic element de pe linia n-1

c.

cel mai mare element de pe coloana n-1

d.

cel mai mic element de pe coloana n-1

2.

Care dintre urmtoarele valori pot reprezenta gradele nodurilor unui graf neorientat cu 6
noduri?
(4p.)

a.

3 2 2 2 3 3

b.

4 2 2 2 3 2

c.

5 2 2 2 0 3

d.

5 2 2 2 1 2

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


3.

Considerndu-se declararea alturat, scriei o secven de struct elev


instruciuni prin executarea creia s se afieze, pe o singur { char nume[50];
int clasa;
linie a ecranului, coninutul variabilei x.
(6p.)
float medie;
}x;

4.

Se consider graful neorientat cu mulimea vrfurilor {1,2,3,4,5,6} i mulimea muchiilor


{[1,2],[2,3],[3,4],[3,5],[4,5],[1,3],[2,6],[2,4],[4,6]}.
Care este numrul minim de muchii ce trebuie eliminate i care sunt aceste muchii astfel
nct graful parial obinut s nu mai fie conex?
(6p.)

5.

Se consider un text cu maximum 255 de caractere, format din litere mici ale alfabetului
englez i spaii. Textul conine cel puin o consoan. Scriei un program C/C++ care citete
de la tastatur textul i afieaz pe ecran numai ultima consoan care apare n text.
Exemplu: dac de la tastatur se introduce textul mare frig saci
pe ecran se va afia: c
(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

Subiectul II (30 de puncte) - Varianta 008


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

Cte frunze are arborele cu 8 noduri i rdcina 1, 0 1


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

0
1
0
1
0
0
0
0

a.

d.

2.

Care este numrul maxim de vrfuri de grad 0 pe care le poate avea un graf neorientat cu
10 noduri i 7 muchii?
(4p.)

a.

b.

b.

c.

c.

d.

0
0
1
0
0
0
0
0

1
0
0
0
0
1
0
1

0
0
0
0
1
0
1
0

0
0
0
0
0
1
0
0

0
0
0
0
1
0
0
0

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


3.

Ce se afieaz n urma executrii secvenei de program urmtoare, dac variabila s


memoreaz irul de caractere abcdefgh?
strcpy(s+2,s+4);
cout<<s<< <<strlen(s); | printf(%s %d ,s,strlen(s));

(6p.)

4.

Se consider un graf orientat cu 6 noduri care are urmtoarele proprietti:


- suma gradelor externe ale tuturor varfurilor grafului este egal cu 6;
- sunt doar 3 vrfuri care au gradul intern egal cu 1.
Care este valoarea maxim pe care o poate avea gradul extern al unui vrf din graful dat?
Reprezentai prin liste de adiacen un graf care ndeplinete condiiile din enunul
problemei i n care unul dintre vrfuri are acest grad extern maxim.
(6p.)

5.

Scriei un program C/C++ care citete de la tastatur dou numere naturale n i p


(2n15, 1p15) i construiete n memorie un tablou bidimensional cu n linii i p
coloane. Tabloul va fi construit astfel nct, parcurgnd tabloul linie cu linie de sus n jos i
fiecare linie de la stnga la dreapta, s se obin irul primelor n*p ptrate perfecte
impare, ordonat strict cresctor, ca n exemplu. Tabloul astfel construit va fi afiat pe ecran,
fiecare linie a tabloului pe cte o linie a ecranului, cu cte un spaiu ntre elementele fiecrei
linii.
Exemplu: pentru n=2, p=3 programul va afia 1 9 25
tabloul alturat:
(10p.) 49 81 121

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

Subiectul II (30 de puncte) - Varianta 009


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

Considernd declararea alturat, care dintre urmtoarele secvene de struct {


instruciuni realizeaz n mod corect citirea de la tastatur a valorilor int a, b;
celor dou cmpuri ale variabilei x?
(4p.) } x;

a.

cin>>x;

scanf(%d, &x);

b.

cin>>a.x>>b.x;

scanf(%d %d, &a.x,&b.x);

c.

cin>>x.a>>x.b;

scanf(%d %d, &x.a,&x.b);

d.

cin>>a->x>>b->x;

scanf(%d %d, &a->x,&b->x);

2.

Se consider graful neorientat G cu 8 noduri, care are urmtoarele proprieti:


- suma gradelor tuturor nodurilor este 12
- graful are exact 3 noduri cu gradul 1
Care este numrul maxim de noduri de grad 0 ale grafului G?

a.

b.

c.

d.

(4p.)

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


3.

Ce se afieaz n urma executrii secvenei de n=strlen(s);


program alturate, dac variabila s memoreaz irul s[n-1]=s[0];
de caractere abcdef iar variabila n este de tip cout<<s; | printf(%s ,s);
ntreg?
(6p.)

4.

Se consider
graful orientat G reprezentat prin listele de
adiacen alturate. Care este lungimea maxim a unui drum
elementar din acest graf? Care sunt arcele care compun un drum
cu aceste proprieti?
(6p.)

5.

Se consider tabloul bidimensional cu n linii i n coloane ce conine numere naturale cu cel


mult patru cifre fiecare. Scriei programul C/C++ care citete de la tastatur numrul natural
n (2n23) i cele n*n elemente ale tabloului i apoi afieaz pe ecran elementele
primului ptrat concentric, separate prin cte un spaiu. Ptratul este parcurs n sensul
acelor de ceasornic ncepnd din colul su stnga-sus, ca n exemplu. Primul ptrat
concentric este format din prima i ultima linie, prima i ultima coloan a tabloului.
Exemplu: pentru n=5 i tabloul alturat, se va 1 2 3 4 5
afia:
6 7 8 9 1
1 2 3 4 5 1 6 2 7 6 5 4 3 7 2 6
2 3 4 5 6
(10p.) 7 8 9 1 2
3 4 5 6 7

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

Subiectul II (30 de puncte) - Varianta 010


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

Considernd declararea alturat, care dintre urmtoarele secvene de struct {


int a, b;
instruciuni afieaz valorile memorate n cele dou cmpuri ale
} x;
variabilei x, separate printr-un spaiu?
(4p.)

a.

cout <<x.a<< <<x.b;

printf(%d %d, x.a,x.b);

b.

cout<<a.x<< <<b.x;

printf(%d %d, a.x,b.x);

c.

cout<<x;

printf(%d, x);

d.

cout<<a->x<< <<b->x;

printf(%d %d, a->x,b->x);

2.

i=0;
while (i<strlen(s)-1)
char s[]=abbacdde;
if (s[i]==s[i+1])
int i;
{ strcpy(s+i,s+i+2);
if (i>0) i=i-1;
Ce ir reine variabila s dup executarea secvenei de
}
instruciuni alturate?
(4p.)
else i=i+1;

a.

aace

Se consider declarrile de mai jos:

b.

ace

c.

ce

d.

acde

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


3.

Care este gradul maxim pe care l poate avea un nod al unui graf neorientat cu 6 muchii i
6 noduri dintre care exact dou au gradul 0? Care este reprezentarea prin liste de
adiacen pentru un astfel de graf?
(6p.)

4.

Se consider graful neorientat cu 80 de noduri i 3160 muchii. Care este numrul de muchii
ce pot fi eliminate astfel nct graful parial obinut s devin arbore?
(6p.)

5.

Scriei un program C/C++ care citete de la tastatur dou numere naturale n i p


(2n15, 1p15) i construiete n memorie un tablou bidimensional cu n linii i p
coloane. Tabloul va fi construit astfel nct parcurgnd matricea de la prima linie ctre ultima
i fiecare linie de la stnga la dreapta s se obin irul primelor n*p ptrate perfecte pare
ordonat strict cresctor. Tabloul astfel construit va fi afiat pe ecran, fiecare linie a tabloului
pe cte o linie a ecranului, cu cte un spaiu ntre elementele fiecrei linii.
0 4 16
Exemplu: pentru n=2, p=3 programul va afia
36 64 100
tabloul alturat:
(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

Subiectul II (30 de puncte) - Varianta 011


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

Se consider graful orientat reprezentat prin matricea de


adiacen alturat. Care este lungimea maxim a unui drum de
la vrful 4 pn la vrful 6 format din vrfuri distincte dou cte
dou?
(6p.)

0
0
0
0
1
1

a.

d.

2.

Pentru a memora simultan numele i media la informatic a unui elev n variabila e, se


poate utiliza declararea:
(4p.)

a.

struct e{
string nume; float media;}

b.

char e.nume[40];
float e.media;

c.

float e;

d.

struct {char a[40]; float b;} e;

b.

c.

1
0
0
0
1
0

1
0
0
1
0
1

0
0
0
0
0
0

0
1
0
1
0
0

0
1
0
0
1
0

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


strcpy(s,abracadabra);
3.
Ce se afieaz pe ecran n i=0;
urma executrii secvenei de cout<<strlen(s); | printf("%d",strlen(s));
program alturate, n care while (i<strlen(s))
variabila s memoreaz un ir cu
if (s[i]=='a')
cel mult 12 caractere, iar
strcpy(s+i,s+i+1);
variabila i este de tip ntreg?
else
i=i+1;
(6p.)
cout<<" "<<s; | printf(" %s",s);
4.

Cte grafuri neorientate distincte, fr bucle, cu 4 vrfuri, se pot construi? Dou grafuri sunt
distincte dac matricele lor de adiacen difer.
(4p.)

5.

Scriei un program C/C++ care citete de la tastatur dou valori naturale nenule m i n
(m10, n10) i apoi m*n numere naturale nenule cu cel mult 4 cifre fiecare, reprezentnd
elementele unei matrice cu m linii i n coloane. Programul determin apoi valorile minime de
pe fiecare linie a matricei i le afieaz pe o linie a ecranului separate prin cte un spaiu.
3 6 5 4 7

Exemplu: pentru m=3, n=5 i matricea 9 6 12 9 10 , se afieaz pe ecran valorile


5 13 7 2 3

3 6 2 (cea mai mic valoare de pe prima linie a matricei este 3, cea mai mic valoare de pe
linia a doua este 6, cea mai mic valoare de pe linia a treia este 2).
(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

Subiectul II (30 de puncte) - Varianta 012


Pentru fiecare dintre itemii 1 i 2 scriei pe foaia de examen litera
rspunsului corect.
0 1 1 0 1
1.
Un graf neorientat cu 6 noduri, numerotate de la 1 la 6, 1 0 1 0 0
este reprezentat prin matricea de adiacen alturat. 1 1 0 1 1
Care sunt vrfurile care au gradul maxim?
(4p.)
0 0 1 0 1
1 0 1 1 0

care corespunde
1
1
0
0
0

1 1 0 0 0 0
a.

2.

Pentru care dintre urmtorii arbori cu rdcin, fiecare avnd 9 noduri, numerotate de la 1
la 9, memorai cu ajutorul vectorilor de tai, nodul 3 are cei mai muli descendeni? (4p.)

a.

tata=(2,0,2,3,2,3,4,4,3)

b.

tata=(3,3,4,0,2,3,4,4,4)

c.

tata=(4,2,4,0,3,3,3,3,3)

d.

tata=(0,1,1,3,4,3,4,4,3)

b.

c.

1, 3

d.

1, 3, 5

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


3.

O variabil e este folosit pentru a memora simultan numele i prenumele unui elev precum
i cele trei note obinute de acesta la un concurs de atletism. tiind c notele sunt numere
ntregi cu maximum dou cifre, numele este un ir cu maximum 20 de caractere, prenumele
este un ir cu maximum 30 de caractere iar punctajul total al elevului se calculeaz folosind
atribuirea:
total=e.nota1+e.nota2+e.nota3;
scriei declararea variabilei e.

4.

5.

(6p.)

Scriei ce se afieaz pe ecran n urma char s[13]="informatica";


executrii secvenei de program alturate, cout<<strlen(s);
| printf("%d",strlen(s));
n care variabila s memoreaz un ir cu cel
for
(i=0;i<strlen(s);i++)
mult 12 caractere, iar variabila i este de
if (s[i]=='a' || s[i]=='e' ||
tip ntreg.
(6p.)
s[i]=='i' || s[i]=='o' ||
s[i]=='u')
s[i]= s[i]+1;
cout<<" "<<s;
| printf(" %s",s);
Scriei un program C/C++ care citete de la tastatur un numr natural n (2<n<25) i apoi
construiete n memorie o matrice cu n linii i n coloane, numerotate de la 1 la n, ale crei
elemente primesc valori dup cum urmeaz: elementul din linia i i coloana j primete ca
valoare ultima cifr a produsului i*j (1in i 1jn).
Programul va afia matricea astfel construit pe ecran, cte o linie a
matricei pe o linie a ecranului, elementele fiecrei linii fiind separate prin
cte un spaiu.
Exemplu: pentru n=4 se va afia matricea alturat.
(10p.)

BACALAUREAT 2009 - INFORMATIC, limbajul C/C++


Specializarea Matematic-informatic

1
2
3
4

2
4
6
8

3
6
9
2

4
8
2
6

Subiectul II

Ministerul Educaiei, Cercetrii i Inovrii


Centrul Naional pentru Curriculum i Evaluare n nvmntul Preuniversitar

Subiectul II (30 de puncte) - Varianta 013


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

Care este vectorul "de tai" pentru arborele cu rdcin


din figura alturat?
(6p.)

a.

0 0 5 7 6 5 1

b.

1 0 0 7 6 5 0

c.

7 4 5 0 4 5 4

d.

7 4 5 0 4 5 7

2.

Cte grafuri neorientate distincte, cu 5 noduri, numerotate de la 1 la 5, se pot construi,


astfel nct nodul 1 s aib gradul 1? Dou grafuri sunt distincte dac matricele lor de
(4p.)
adiacen sunt diferite.

a.

32

b.

256

c.

15

d.

24

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


3.

Pentru a memora denumirea unui medicament i preul acestuia se folosete variabila m.


Scriei declararea variabilei m tiind c denumirea medicamentului este un ir cu maximum
30 de caractere, preul acestuia este un numr real, iar majorarea cu 10% a preului se face
folosind urmtoarea atribuire:
m.pret=m.pret*1.1;

(4p.)

4.

Scriei ce se afieaz pe ecran n urma char s[13]="abcdefghoid";


executrii secvenei de program alturate, i=0;
n care variabila s memoreaz un ir de cel cout<<strlen(s);
| printf("%d",strlen(s));
mult 12 caractere, iar variabila i este de tip
while
(i<strlen(s))
ntreg.
if (s[i]=='a' || s[i]=='e' ||
(6p.)
s[i]=='i' || s[i]=='o' ||
s[i]=='u')
strcpy(s+i,s+i+1);
else i++;
cout<<" "<<s;
| printf(" %s",s);

5.

Scriei un program C/C++ care citete de la tastatur un numr natural n (2<n<40) i apoi
construiete n memorie o matrice cu n linii i n coloane, numerotare de la 1 la n, ale crei
elemente primesc valori dup cum urmeaz:
- elementele aflate pe diagonala secundar sunt toate nule;
- elementele aflate deasupra diagonalei secundare sunt toate 1;
- elementele aflate sub diagonala secundar sunt toate 2.
Programul afieaz pe ecran matricea construit, cte o linie a matricei pe 1 1 1 0
cte o linie a ecranului, elementele fiecrei linii fiind separate prin cte un 1 1 0 2
spaiu.
1 0 2 2
Exemplu: pentru n=4 se va afia matricea alturat.
(10p.) 0 2 2 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

Subiectul II (30 de puncte) - Varianta 014


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

Se consider un graf neorientat cu 5 noduri, etichetate cu literele a, b, c, d, e, n care orice


nod etichetat cu o vocal este adiacent cu toate nodurile etichetate cu consoane i numai
cu acestea, iar orice nod etichetat cu o consoan este adiacent numai cu nodurile
etichetate cu vocale. Cte muchii are acest graf?
(4p.)

a.

12

2.

ntr-o stiv au fost introduse, n aceast ordine, valorile 10, 5, 4, ca n


figura alturat. Dac se noteaz cu PUSH(x) operaia prin care se
adaug valoarea x n vrful stivei, i cu POP operaia prin care se
extrage elementul din vrful stivei, care este coninutul stivei dup
executarea urmtoarelor operaii?

b.

c.

POP; PUSH(7); POP; POP; PUSH(9);


a.

b.

c.

d.

(6p.)
d.

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


char s[11]="abcduecda";
cout<<strlen(s); | printf(%d, strlen(s));
i=0; j=strlen(s)-1;
k=0;
while (i<j)
{ if (s[i]==s[j])
k=k+1;
i=i+1; j=j-1;
}
cout<<" "<<k; | printf(" %d",k);

3.

Ce se afieaz pe ecran n
urma executrii secvenei de
program alturate, n care
variabila s memoreaz un ir
cu cel mult 10 caractere, iar
variabilele i, j i k sunt de
tip ntreg?
(4p.)

4.

Care sunt etichetele nodurilor de tip frunz ale arborelui cu rdcin, avnd 7 noduri,
numerotate de la 1 la 7, i urmtorul vector de tai: (5,1,5,1,0,7,5)?
(6p.)

5.

Scriei un program C/C++ care citete de la tastatur un numr natural nenul cu exact 4
cifre, construiete n memorie i afieaz apoi pe ecran o matrice avnd 4 linii i 4 coloane,
completat astfel: elementele de pe prima coloan a matricei vor fi toate egale cu cifra
unitilor numrului dat, elementele de pe a doua coloan a matricei vor fi toate egale cu
cifra zecilor numrului dat, elementele de pe a treia coloan a matricei vor fi toate egale cu
cifra sutelor numrului dat, iar elementele de pe a patra coloan a matricei vor fi toate egale
cu cifra miilor numrului dat.
Matricea va fi afiat pe ecran, cte o linie a matricei pe cte o linie a
ecranului, iar elementele fiecrei linii vor fi separate prin cte un spaiu.
Exemplu: dac se citete numrul 1359, matricea construit va fi cea
alturat.
(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

Subiectul II (30 de puncte) - Varianta 015


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

Ci frai are nodul 1 din arborele cu rdcin cu 7 noduri, numerotate de la 1 la 7, avnd


urmtorul vector de tai: (5,1,5,1,0,7,5)?
(6p.)

a.

2.

Stiva este o structur de date care poate fi descris astfel:

a.

oricare element poate fi extras

b.

ultimul element introdus n stiv este


ultimul care poate fi extras

c.

primul element introdus n stiv este d.


primul care poate fi extras

primul element introdus n stiv este


ultimul care poate fi extras

b.

c.

d.

3
(4p.)

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


3.

Ce se afieaz pe ecran n urma i=0; char s[11]="abaemeiut";


executrii secvenei de program cout<<strlen(s); | printf("%d",strlen(s));
alturate, n care variabila s while (i<strlen(s))
memoreaz un ir cu cel mult 10 if (s[i]=='a' || s[i]=='e' ||
s[i]=='i' || s[i]=='o' ||
caractere, iar variabila i este de
s[i]=='u)
tip ntreg?
(4p.)
{ strcpy(s+i,s+i+1); i=i+1; }
else
i=i+2;
cout<<" "<<s; | printf(" %s",s);

4.

Se consider graful neorientat cu 8 noduri, numerotate de la 1 la 8, i muchiile [1,2],


[1,6], [1,7], [2,3], [2,6], [3,6], [3,4], [4,5], [4,8], [5,6], [7,8]. Care este
gradul minim al unui nod din acest graf? Care sunt nodurile care au acest grad minim? (6p.)

5.

Scriei un program C/C++ care citete de la tastatur un numr natural cu exact 5 cifre i
construiete n memorie o matrice cu 5 linii i 5 coloane, numerotate de la 1 la 5, format
astfel:
- elementele de pe linia 1, au toate valoarea egal cu cifra unitilor numrului citit;
- elementele de pe linia 2, au toate valoarea egal cu cifra zecilor numrului citit;
- elementele de pe linia 3, au toate valoarea egal cu cifra sutelor;
- elementele de pe linia 4, au toate valoarea egal cu cifra miilor;
- elementele de pe linia 5, au toate valoarea egal cu cifra zecilor de mii.
Programul afieaz pe ecran matricea astfel construit, cte o linie a 1 1 1 1 1
matricei pe cte o linie a ecranului, elementele de pe aceeai linie fiind 3 3 3 3 3
7 7 7 7 7
separate prin cte un spaiu.
Exemplu: dac se citete numrul 28731 matricea construit va fi cea 8 8 8 8 8
alturat.
(10p.) 2 2 2 2 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

Subiectul II (30 de puncte) - Varianta 016


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

Numrul de muchii ale unui graf neorientat cu 12 noduri, n care fiecare nod este adiacent
cu exact 11 noduri, este :
(4p.)

a.

144

2.

Care dintre urmtoarele variante reprezint o declarare corect pentru o variabil x care
memoreaz simultan vrsta n ani mplinii i media la bacalaureat a unui elev?
(4p.)

a.

struct {float media;


int varsta;} x;

b.

struct x {float media;


int varsta;};

c.

float x.media;
int x.varsta;

d.

struct elev {float x.media;


int x.varsta};

b.

66

c.

78

d.

11

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


3.

4.

ntr-o stiv au fost introduse n aceast ordine, numerele 5, 7, 3, 8. Precizai numrul


minim de elemente care trebuie extrase din stiv pentru a fi siguri c s-a extras inclusiv
elementul cu valoarea 3 i care este elementul aflat n vrful stivei dup extragerea
acestui element?
(6p.)
Ce
va
afia
secvena strcpy(a,clasa a-XII-a A);
alturat, tiind c variabila a cout<<a<<endl; | printf(%s\n,a);
memoreaz un ir cu cel mult for(i=0;i<strlen(a);i++)
if(a[i]>=a&&a[i]<=z)
100
de
caractere,
iar
cout<<a[i]; | printf(%s,a[i]);
variabila i este de tip ntreg?
(6p.)

5.

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


construiete n memorie i afieaz pe ecran o matrice cu n linii i n coloane, n care
elementele de pe cele dou diagonale sunt egale cu 4, iar restul elementelor sunt egale cu
3. Elementele matricei vor fi afiate pe ecran, cte o linie a matricei pe cte o linie a
ecranului cu cte un spaiu ntre elementele fiecrei linii.
Exemplu: pentru n=5 se va afia matricea alturat.
(10p.) 4 3 3 3 4
3 4 3 4 3
3 3 4 3 3
3 4 3 4 3
4 3 3 3 4

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

Subiectul II (30 de puncte) - Varianta 017


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

Care este gradul maxim posibil i care este gradul minim posibil pentru un nod dintr-un graf
cu n noduri, care este arbore?
(4p.)

a.

n-1 i 1

b.

n i 1

c.

n i 0

d.

n-1 i 0

2.

Care dintre urmtoarele variante reprezint o declarare corect pentru o variabil x care
memoreaz simultan codul de identificare al unui candidat la un examen, exprimat ca un
numr natural de cel mult 4 cifre i media obinut de acesta la examen, exprimat ca un
numr real?
(4p.)

a.

struct x { int cod;


float media;};

b.

struct { int cod;


float media;} x;

c.

int x.cod ;
float x.media;

d.

struct candidat { int x.cod;


float x.media;};

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


3.

ntr-o stiv au fost introduse, n aceast ordine, numerele 5, 7, 3, 8. Scriei care este
numrul minim de elemente care trebuie extrase din stiv pentru a fi siguri c s-a extras
inclusiv elementul cu valoarea 7 i care este numrul de elemente rmase n stiv dup
extragerea acestui element.
(6p.)

4.

Ce va afia secvena
program,
tiind
c
memoreaz un ir cu cel
caractere, iar variabila i
ntreg?

5.

alturat de
variabila
a
mult 100 de
este de tip
(6p.)

strcpy(a,bacalaureat);
n=strlen(a);
cout<<n<<endl;| printf(%d\n,n);
cout<<a[0]<<*<<a[n-1];|
printf(%c*%c,a[0],a[n-1]);

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


construiete n memorie i afieaz pe ecran o matrice cu n linii i n coloane, n care
fiecare element de pe diagonala secundar are valoarea n, fiecare element aflat deasupra
diagonalei secundare este mai mic cu o unitate dect vecinul aflat pe aceeai linie n
dreapta lui i fiecare element aflat sub diagonala secundar este mai mare cu o unitate
dect vecinul aflat pe aceeai linie n stnga lui.
Elementele matricei vor fi afiate pe ecran, cte o linie a matricei pe 1 2 3 4 5
cte o linie a ecranului cu cte un spaiu ntre elementele fiecrei linii. 2 3 4 5 6
Exemplu: pentru n=5 se va afia matricea alturat.
(10p.) 3 4 5 6 7
4 5 6 7 8
5 6 7 8 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

Subiectul II (30 de puncte) - Varianta 018


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

Un arbore binar este un arbore cu rdcin n care fiecare nod are cel mult 2 descendeni
direci (fii), iar nlimea arborelui este reprezentat de numrul maxim de muchii ale unui
lan elementar ce unete rdcina cu un vrf terminal (frunz). Pentru un arbore binar cu
exact 8 noduri, precizai care este nlimea minim posibil?
(4p.)

a.

2.

Care dintre urmtoarele variante reprezint o declarare corect pentru o variabil x care
memoreaz simultan coordonatele reale (abscisa i ordonata) ale unui punct n planul
xOy?
(4p.)

a.

struct punct {float ox,oy;} x;

b.

char x[2];

c.

struct x {float ox,oy;};

d.

float x;

b.

c.

d.

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


3.

Care va fi valoarea elementului aflat n vrful unei stive iniial vid i care este numrul de
elemente rmase n stiv, dup efectuarea, n aceast ordine, a urmtoarelor operaii:
se introduce valoarea 3; se introduce valoarea 7; se introduce valoarea 5; se extrage un
element; se introduce valoarea 2; se introduce valoarea 4; se extrage un element. (6p.)

4.

5.

n secvena alturat, variabila a strcpy(a,informatica);


memoreaz un ir cu cel mult 100 de for(i=0;i<strlen(a);i++)
if(...)
caractere, iar variabila i este de tip
cout<<...;
|
printf(...);
ntreg.
else
Completai punctele de suspensie din
cout<<...;
|
printf(...);
secven astfel nct aceasta s afieze
irul de caractere *nf*rm*t*c*. (6p.)
Scriei un program C/C++ care citete de la tastatur un numr natural n (2<n<20),
construiete n memorie i afieaz pe ecran o matrice cu n linii i n coloane, numerotate
de la 1 la n. Fiecare element din matrice aflat pe o linie impar va fi egal cu numrul liniei pe
care se afl i fiecare element aflat pe o linie par va fi egal cu numrul coloanei pe care se
afl.
Elementele matricei vor fi afiate pe ecran, cte o linie a matricei pe 1 1 1 1 1
cte o linie a ecranului cu cte un spaiu ntre elementele fiecrei linii. 1 2 3 4 5
Exemplu: pentru n=5 se va afia matricea alturat.
(10p.) 3 3 3 3 3
1 2 3 4 5
5 5 5 5 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

Subiectul II (30 de puncte) - Varianta 019


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

Care este numrul de muchii care trebuie eliminate dintr-un graf neorientat, complet, cu 7
noduri, astfel nct graful parial obinut s fie arbore?
(4p.)

a.

15

2.

Care dintre urmtoarele variante reprezint o declarare corect pentru o variabil x care
memoreaz simultan partea real i partea imaginar a unui numr complex?
(4p.)

a.

struct x {float im,re;};

b.

char x[2];

c.

struct complex{ float im, re;} x;

d.

float x;

b.

c.

d.

21

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


3.

Ce va afia secvena alturat de strcpy(x,bac2008);


program, tiind c variabila x for(i=3;i<strlen(x);i++)
cout<<x[i]; | printf(%c,x[i]);
memoreaz un ir cu cel mult 100 de
cout<<x<<endl;
| printf(%s\n,x);
caractere, iar variabila i este de tip
ntreg?
(6p.)

4.

Care vor fi valorile primului i ultimului element extras dintr-o coad iniial vid, dac se
efectueaz urmtoarele operaii, n aceast ordine: se introduce valoarea 5; se introduce
valoarea 4; se extrage un element; se introduce valoarea 2; se introduce valoarea 7; se
extrage un element.
(6p.)

5.

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


construiete n memorie i afieaz pe ecran o matrice cu n linii i n coloane, numerotate
de la 1 la n, n care fiecare element aflat pe o coloana impar este egal cu suma dintre
numrul liniei i numrul coloanei pe care se afl i fiecare element aflat pe o coloan par
este egal cu numrul liniei pe care se afl.
Elementele matricei vor fi afiate pe ecran, cte o linie a matricei pe 2 1 4 1 6
cte o linie a ecranului cu cte un spaiu ntre elementele fiecrei linii. 3 2 5 2 7
Exemplu: pentru n=5 se va afia matricea alturat.
(10p.) 4 3 6 3 8
5 4 7 4 9
6 5 8 5 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

Subiectul II (30 de puncte) - Varianta 020


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

Suma gradelor interne ale tuturor vrfurilor unui graf orientat este ntotdeauna egal cu:
(4p.)

a.

numrul valorilor de 1 aflate sub b.


diagonala principal n matricea sa de
adiacen

produsul gradelor externe ale tuturor


vrfurilor grafului

c.

suma tuturor valorilor aflate deasupra d.


diagonalei principale n matricea sa de
adiacen

suma gradelor
vrfurilor grafului

2.

Care dintre urmtoarele variante reprezint o declarare corect pentru o variabil x care
memoreaz simultan numrtorul i numitorul unei fracii ireductibile:
(4p.)

a.

struct fractie{int n1,n2;} x;

b.

char x[2];

c.

struct x{int n1,n2;};

d.

float x;

externe

ale

tuturor

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


3.

Care vor fi valorile primului i ultimului element ale unei cozi iniial vide, dac se
efectueaz urmtoarele operaii, n aceast ordine: se introduce valoarea 2; se introduce
valoarea 5; se extrage un element; se introduce valoarea 9; se introduce valoarea 7; se
extrage un element.
(6p.)

4.

n secvena alturat, variabila a memoreaz strcpy(a,Bac 2008 iulie);


un ir cu cel mult 100 de caractere, iar variabila for(...)
cout<<a[i];
i este de tip ntreg. Completai punctele de
| printf(%c,a[i]);
suspensie, astfel nct aceasta s afieze
caracterele irului memorat n variabila a, n
ordine invers celei n care se gsesc n ir.
(6p.)

5.

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


construiete n memorie i afieaz pe ecran o matrice cu n linii i n coloane, numerotate
de la 1 la n, n care fiecare element aflat pe prima linie sau pe prima coloan din matrice
este egal cu suma dintre numrul liniei i numrul coloanei pe care se afl, iar fiecare dintre
celelalte elemente este egal cu suma dintre elementul vecin aflat pe aceeai linie cu el, dar
pe coloana din stnga sa i elementul vecin aflat pe aceeai coloan cu el, dar pe linia de
deasupra sa.
5
6
Elementele matricei vor fi afiate pe ecran, cte o linie a 2 3 4
matricei pe cte o linie a ecranului cu cte un spaiu ntre 3 6 10 15 21
4 10 20 35 56
elementele fiecrei linii.
Exemplu: pentru n=5 se va obine matricea alturat. 5 15 35 70 126
(10p.) 6 21 56 126 252

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

Subiectul II (30 de puncte) - Varianta 021


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

n secvena de mai jos, variabila a memoreaz un tablou bidimensional cu 4 linii i 4 coloane,


numerotate de la 1 la 4, cu elementele reale. Variabila p este real, iar i este de tip ntreg.
Care dintre instruciunile de mai jos poate nlocui p=1;
punctele de suspensie astfel nct secvena s for(i=1;i<=4;i++)
determine memorarea n variabila p a valorii produsului
....
celor 8 elemente aflate pe diagonalele matricei.
(4p.)

a.

p=p*a[5-i][i]*a[i][5-i];

b.

p=p*a[i][i]*a[i][4-i];

c.

p=p*a[i][i]*a[5-i][5-i];

d.

p=p*a[5-i][5-i]*a[i][5-i];

2.

ntr-un graf orientat cu 7 noduri suma gradelor interioare ale tuturor nodurilor este egal cu
10. Care este valoarea sumei gradelor exterioare ale tuturor nodurilor?
(4p.)

a.

b.

20

c.

10

d.

17

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


3.

Se consider declarrile de mai jos, n care variabila ev memoreaz date despre un anumit
elev. Scriei instruciunea C/C++ prin care se iniializeaz anul naterii acestui elev cu
valoarea 1990.
(6p.)
struct data{
int zi;
int luna;
int an;
};

struct elev {
char nume[30];
struct data data_nasterii;
float media;
}ev;

4.

Stiva S i coada C memoreaz numere ntregi.n ambele se introduc, n ordine, numerele 1,


2, 3, 4. Se noteaz cu SC operaia de extragere a unui element din stiva S i adugarea
acestuia n coada C, iar cu CS operaia de eliminare a unui element din coada C i
introducerea acestuia n stiva S. Dup executarea urmtoarei secvene de operaii: CS;
CS; SC; CS; CS;
a) care este ultima valoare introdus n stiva stiva S?
(3p.)
b) care este ultima valoare care a fost adugat n coada C?
(3p.)

5.

Se consider un text alctuit din cel mult 250 de caractere, n care cuvintele sunt formate doar
din litere mici ale alfabetului englez i sunt separate prin unul sau mai multe caractere *.
Scriei un program C/C++ care citete de la tastatur textul i afieaz pe ecran, pe cte o
linie, toate secvenele formate din cte dou litere identice, ca n exemplu.
Exemplu: dac textul citit este:
perechile alturate.

se

afieaz
(10p.)

BACALAUREAT 2009 - INFORMATIC, limbajul C/C++


Specializarea Matematic-informatic

ii
ii
oo

Subiectul II

Ministerul Educaiei, Cercetrii i Inovrii


Centrul Naional pentru Curriculum i Evaluare n nvmntul Preuniversitar

Subiectul II (30 de puncte) - Varianta 022


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

ntr-o stiv ce memoreaz numere ntregi se introduc, n ordine, urmtoarele numere:


1,2,3,4,5,6,7. Cte numere trebuie s eliminm din stiv astfel ca n vrful stivei s se
gseasc numrul 5?
(4p.)

a.

2.

Pentru declararea alturat precizai care struct elev


{char nume[20];
dintre instruciunile de atribuire este greit:(4p.)
int nota;} e1,e2;

a.

e1=e2+1;

b.

e1.nume[2]=x;

c.

e1=e2;

d.

e1.nota=e2.nota+1;

b.

c.

d.

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


3.

Ce valoare are expresia de mai jos dac variabila s memoreaz irul de caractere
alfabet, format numai din litere?
strlen(strcpy(s,s+2))

(6p.)

4.

ntr-un graf neorientat cu 6 noduri, numerotate de la 1 la 6, exist cte o muchie ntre


oricare dou noduri numerotate cu numere consecutive i cte o muchie ntre nodul
numerotat cu 6 i fiecare dintre celelalte noduri. Cte subgrafuri cu exact 3 noduri, toate
adiacente dou cte dou, are graful dat? Scriei pentru fiecare dintre aceste subgrafuri
nodurile din care este format.
(6p.)

5.

Scriei un program C/C++ care citete de la tastatur numerele naturale m i n din


intervalul [1,20], apoi construiete n memorie i afieaz pe ecran un tablou
bidimensional cu m linii i n coloane astfel nct prin parcurgerea acestuia linie cu linie de
sus n jos i fiecare linie de la stnga la dreapta, se obin n ordine descresctoare toate
numerele naturale de la 1 la m*n, ca n exemplu.
Fiecare linie a tabloului este afiat pe cte o linie a ecranului, elementele 12 11 10
9 8 7
aceleiai linii fiind separate prin cte un spaiu.
Exemplu: pentru m=4 i n=3 se va construi i afia tabloul alturat.
(10p.) 6 5 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

Subiectul II (30 de puncte) - Varianta 023


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

Care din urmtoarele expresii are valoarea 1 dac i numai dac irul de caractere s, de
lungime 10, este obinut prin concatenarea a dou iruri identice?
(4p.)

a.

strcmp(s,s+5)==0

b.

s==strstr(s,s+5)

c.

s==s+5

d.

strcmp(s,strcat(s,s+5))==0

2.

Funcia predefinit care returneaz modulul unui numr ntreg este:

a.

sgn

b.

fabs

c.

mod

(4p.)
d.

abs

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


3.

Care este lungimea maxim a unui lan elementar pentru un arbore cu rdcin, cu 7
noduri, numerotate de la 1 la 7, dat de vectorul de tai: (3,3,0,1,2,2,4)? Scriei
muchiile din care este alctuit un lan elementar de lungime maxim din acest arbore. (6p.)

4.

Pentru declaraiile alturate care este struct punct2D {


int x; int y;};
numrul maxim de numere ntregi ce pot fi
memorate n variabila a?
(6p.) struct punct2D a[10][10];

5.

Un tablou bidimensional A cu m linii i n coloane (1m100, 1n100) conine pe prima


linie numerele 1,2,...,n, iar pe prima coloan numerele 1,2,...,m. Celelalte elemente
ale tabloului sunt date de relaia: Ai,j=Ai-1,j+Ai,j-1. Scriei un program C/C++ care
citete de la tastatur numerele m i n i afieaz pe ecran ultima cifr a elementului de pe
ultima linie i ultima coloan a tabloului.
(10p.)
Exemplu: pentru m=3 i n=4 se va afia 5
1 2 3 4
deoarece elementele tabloului A sunt:
2 4 7 11
3 7 14 25

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

Subiectul II (30 de puncte) - Varianta 024


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

Care dintre urmtoarele arce trebuie adugat unui graf orientat cu 5


noduri, numerotate de la 1 la 5, reprezentat prin matricea de adiacen
alturat, astfel nct n acest graf s existe cel puin un drum ntre
oricare dou vrfuri?
(4p.)

a. (3 , 5)
2.
a.
b.
c.
d.

b.

(4 , 1)

c.

(5 , 3)

0
0
0
0
1

1 0
0 1
0 0
0 0
0 0
d. (3

1
0
0
0
0
,

0
0
0
1
0
2)

Care din urmtoarele proprieti este adevrat pentru un graf orientat cu n vrfuri i n arce
(n>3) care are un circuit de lungime n:
(4p.)
exist un vrf cu gradul intern n-1
pentru orice vrf gradul intern i gradul extern sunt egale
graful nu are drumuri de lungime strict mai mare dect 2
gradul intern al oricrui vrf este egal cu 2

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


3.

Stiva S i coada C memoreaz numere ntregi. n ambele se introduc, n ordine, numerele 1,


2, 3, 4. Se noteaz cu SC operaia de extragere a unui element din stiva S i adugarea
acestuia n coada C, iar cu CS operaia de eliminare a unui element din coada C i
introducerea acestuia n stiva S.
Care este ultima valoare introdus n stiva S i care este ultima valoare care a fost adugat
n coada C la executarea urmtoarei secvene de operaii :
SC; CS; CS; SC; CS;
(6p.)

4.

Scriei o secven de instruciuni C/C++ care s iniializeze elementele unui tablou


bidimensional A, cu n linii i n coloane, 1<n5, cu numerele naturale 1,2,...,n, astfel
nct pe fiecare linie sau coloan s existe toate numerele din mulimea {1,2,...,n}.
(6p.)

5.

Scriei un program C/C++ care citete de la tastatur dou iruri de caractere formate din
maximum 100 litere mici ale alfabetului englez i afieaz pe ecran cel mai lung sufix
comun al celor dou iruri de caractere. Dac cele dou iruri nu au niciun sufix comun,
atunci programul va afia pe ecran mesajul NU EXIST.
Exemplu: pentru irurile marina i elena se va afia na
(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

Subiectul II (30 de puncte) - Varianta 025


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

Structura de date la care se aplic principiul primul venit, primul ieit: (first in, first out)
este:
(4p.)

a.

lista nlnuit

b.

stiva

c.

coada

d.

graf orientat

2.

Un graf neorientat cu 5 noduri are gradele nodurilor egale cu 1,2,2,1,x. Pentru ce


valoare a lui x graful este arbore?
(4p.)

a.

x=2

b.

x<2

c.

x>2

d.

nicio valoare

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


3.

Scriei n C/C++ o instruciune de atribuire n urma creia o variabil real y va memora


valoarea expresiei de mai jos pentru variabila ntreag nenul x.

(6p.)
4.

Scriei secvena de instruciuni care permite afiarea pe ecran a mesajului Corect dac un
ir de maximum 100 caractere, reinut de variabila s, conine caractere de tip cifr, sau
mesajul Incorect n caz contrar.
(6p.)

5.

Se consider un tablou bidimensional cu m linii i n coloane (1m100,1n100), ale crui


elemente aparin mulimii {0,1,2}. Scriei un program C/C++ citete de la tastatur valorile
m, n i elementele tabloului i care afieaz pe ecran numerele de ordine ale coloanelor
pentru care produsul elementelor situate pe ele, este maxim. Liniile i coloanele tabloului
se numeroteaz de la 1 la m respectiv de la 1 la n. Numerele se vor afia separate prin
cte un spaiu.
Exemplu: pentru m=4 i n=4 i tabloul alturat se va afia, nu neaprat n 2 1 1 0
1 1 1 1
aceast ordine:
2 2 2 1
1 2
(10p.)
1 2 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

Subiectul II (30 de puncte) - Varianta 026


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

Pentru graful neorientat din figura alturat, care este numrul de


muchii ale celui mai lung lan elementar, ce are ca extremiti
nodurile 1 i 3 ?
(4p.)

a.

2.

Care este nodul ce poate fi ales ca rdcin a arborelui din figura


alturat, astfel nct rdcina s aib 3 descendeni direci (fii) ?
(4p.)

a.

b.

b.

c.

c.

d.

d.

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


3. Care va fi irul de caractere afiat dup executarea char s[]=raton;
secvenei alturate , n care variabila s memoreaz un s[1]=s[3];
ir cu cel mult 5 caractere?
(6p.) cout<<s; | printf(%s,s);
4. ntr-o stiv care memoreaz numere, o valoare x poate fi adugat
numai dac n vrful stivei se afl un element cu o valoare strict mai
mare dect x; n caz contrar sunt eliminate toate elementele care nu
ndeplinesc aceast condiie i apoi se adaug valoarea x.
Exemplu: pentru stiva din fig.1, adugarea elementului 11 este
precedat de eliminarea elementelor ce conin valorile 2 i 10. Dup
adugare, stiva va avea coninutul din fig.2.
Dac stiva este iniial vid, care este numrul elementelor aflate n
aceast stiv dup adugarea, respectnd condiiile de mai sus, n
ordine, a numerelor 20, 5, 16, 9, 3, 7, 5, 4, 8 ?
(6p.)
5. Scriei un program C/C++ care citete de la tastatur un numr natural n (2n9) i
elementele unui tablou bidimensional A cu n linii i n coloane, care memoreaz numere
naturale mai mici dect 10, i afieaz pe ecran pentru fiecare coloan, produsul
elementelor de pe acea coloan. Valorile afiate vor fi separate prin cte un spaiu.
Exemplu: pentru matricea din figura alturat se afieaz, nu neaprat n
aceast ordine, valorile 0 24 20 12
(10p.)

BACALAUREAT 2009 - INFORMATIC, limbajul C/C++


Specializarea Matematic-informatic

1
9
8
0

1
2
6
2

2
5
1
2

3
4
1
1

Subiectul II

Ministerul Educaiei, Cercetrii i Inovrii


Centrul Naional pentru Curriculum i Evaluare n nvmntul Preuniversitar

Subiectul II (30 de puncte) - Varianta 027


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

1
0
1
1

0
0
0
1

1
0
0
0

1.

Care este numrul arcelor ce au ca extremitate iniial vrful 4, n


graful orientat cu 4 vrfuri, numerotate de la 1 la 4, reprezentat prin
matricea de adiacen alturat?
(4p.)

a.

2.

Care este numrul nodurilor de tip frunz din arborele cu rdcin, cu 8 noduri,
numerotate de la 1 la 8, reprezentat prin vectorul de tai (2,0,6,2,4,4,5,5)? (6p.)

a.

b.

b.

c.

c.

d.

d.

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


3.

n declararea alturat, cmpurile x i y ale nregistrrii reprezint struct fractie


{
int x,y;
numrtorul, respectiv numitorul unei fracii de forma .
}
F,G,H;
Scriei instruciunile prin executarea crora se memoreaz n variabila
H fracia obinut prin adunarea fraciilor reinute n F i G.
(6p.)

4.

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


1,2,3,4,5,6:
. Dac se noteaz cu AD(x) operaia prin care se
adaug un element cu informaia x n coad i cu EL() operaia prin care se elimin un
element din coad, care este elementul aflat n mijlocul cozii i care este suma elementelor
aflate n coad dup executarea secvenei de operaii:
EL(); AD(7); AD(8); EL(); EL();

5.

(4p.)

Scriei un program C/C++ care citete de la tastatur un numr natural


n (2<n<=10) i construiete n memorie o matrice A cu n linii i n
coloane n care toate elementele de pe prima linie, prima i ultima
coloan au valoarea 1 i oricare alt element Aij din matrice este egal
cu suma a 3 elemente situate pe linia i-1: primul aflat pe coloana j-1,
al doilea pe coloana j, iar al treilea pe coloana j+1, ca n exemplu.
Matricea va fi afiat pe ecran, linie cu linie, numerele de pe aceeai
linie fiind separate prin cte un spaiu.
Exemplu: pentru n=5 , se afieaz matricea alturat.
(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

Subiectul II (30 de puncte) - Varianta 028


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

Care este numrul minim de muchii ce pot fi eliminate din graful


alturat astfel nct n graful parial rezultat s existe exact un vrf de
grad 0?
(6p.)

a.

2.

ntr-un arbore cu rdcin fiecare nod neterminal are exact 2 descendeni direci (fii).
Care este numrul de noduri din arbore dac acesta are 8 frunze?
(4p.)

a.

b.

b.

c.

c.

15

d.

d.

10

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


3. ntr-un tablou bidimensional A cu n linii i n coloane, numerotate de la 1 la n, notm cu Aij
elementul aflat pe linia i i coloana j (1in, 1jn). Care este valoarea expresiei j-i
dac elementul Aij este situat pe diagonala principal a tabloului A?
(4p.)
4. Se consider o stiv n care iniial au fost introduse, n aceast ordine, elementele
1,2,3,4,5,6 (ca n imaginea alturat).
Dac se noteaz cu PUSH x operaia prin care se adaug un element cu informaia x
n stiv i cu POP operaia prin care se elimin un element din stiv, care este
elementul aflat n mijlocul stivei i care este suma elementelor aflate n stiv dup
executarea secvenei de operaii: POP; PUSH 7; PUSH 8; POP; POP; ?
(6p.)
5. irul de caractere s2 este clona irului de caractere s1 dac se poate obine din s1 prin
eliminarea tuturor apariiilor unei singure vocale. Se consider vocal orice liter din mulimea
{a,e,i,o,u}.
Scriei programul C/C++ care citete de la tastatur un cuvnt format din cel mult 20 litere
mici ale alfabetului englez i afieaz pe ecran, toate clonele acestui cuvnt, fiecare pe cte
o linie a ecranului.
Exemplu: pentru cuvntul informatica se afieaz, nu neaprat n aceast nformatca
ordine, clonele scrise alturat.
(10p.) infrmatica
informtic

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

Subiectul II (30 de puncte) - Varianta 029


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

Care este numrul maxim de noduri de grad 3 ntr-un graf neorientat cu 5 noduri?

a.

2.

Care dintre noduri trebuie ales ca rdcin n arborele din figura alturat
astfel nct s existe un nod cu 3 descendeni direci (fii)?
(6p.)

a.

b.

b.

c.

c.

d.

d.

(4p.)

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


3.

Care va fi irul de caractere afiat pe ecran dup


executarea secvenei alturate, n care variabila s
memoreaz un ir cu cel mult 4 caractere, iar
variabila t un caracter?
(4p.)

4.

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

char s[]=arac;
t=s[1];
s[1]=s[3];
s[3]=t;
cout<<s; | printf(%s,s);

1,2,3,4,5,6,7,8,9,10:
. Dac se noteaz cu AD(x)
operaia prin care se adaug un element cu informaia x n coad i cu EL() operaia prin care
se elimin un element din coad, care este valoarea memorat n primul element al cozii dup
executarea secvenei de operaii: EL();EL();AD(1); AD(2); EL();EL(); ?
(6p.)
5.

Scriei un program C/C++ care citete de la tastatur un numr


natural n (1n6) i elementele unui tablou bidimensional A cu n linii
i n coloane, care memoreaz numere naturale nenule mai mici
dect 100, i afieaz pe ecran produsul numerelor pivot pentru
matricea A.
Un numr natural x este pivot pentru matricea A dac nmulind
fiecare element de pe prima coloan cu numrul x, se obin, n
aceeai ordine, elementele unei alte coloane din matrice.
Exemplu: pentru matricea din figura alturat se afieaz 8. (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

Subiectul II (30 de puncte) - Varianta 030


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

Care este numrul nodurilor de grad 1 n graful din figura alturat ?(6p.)

a.

2.

Care este valoarea expresiei strlen(s) pentru variabila s de tip ir de caractere, declarat
i iniializat astfel: char s[15]=Proba_E;
(4p.)

a.

b.

b.

15

c.

c.

d.

d.

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


3.

Care sunt nodurile de tip frunz din arborele alturat dac se alege
ca rdcin nodul 6?
(6p.)

4.

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


1,2,3,4,5,6,7,8,9,10 (ca n imaginea alturat).
Dac se noteaz cu AD(x) operaia prin care se adaug un element cu informaia
x n stiv i cu EL() operaia prin care se elimin un element din stiv, care este
elementul aflat n vrful stivei dup executarea secvenei de operaii:
EL();EL();AD(11); AD(12); EL();EL(); ?
(4p.)

5.

Scriei un program C/C++ care citete de la tastatur un numr


natural n (2<n<=15) i construiete n memorie o matrice A cu n linii i
n coloane n care orice element aflat pe prima linie sau pe prima
coloan are valoarea 1 i oricare alt element Aij din matrice este egal
cu suma a dou elemente din matrice, primul aflat pe linia i i pe
coloana j-1 iar cel de-al doilea pe coloana j i pe linia i-1. Matricea
va fi afiat pe ecran, linie cu linie, numerele de pe aceeai linie
fiind separate prin cte un spaiu.
Exemplu: pentru n=4 , se obine matricea alturat.
(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

Subiectul II (30 de puncte) - Varianta 031


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

Se consider graful neorientat cu 7 noduri, numerotate de la 1 la 7, i muchiile[1,3],


[2,3], [3,4], [3,5], [5,4], [1,2], [2,5], [2,4], [6,7], [3,6]. Gradul nodului 5
este :
(4p.)

a.

2.

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


tai t=(2,5,5,3,0,2,4,6,6,2,3). Mulimea tuturor ascendenilor nodului 8 este: (4p.)

a.

{1, 2, 5, 6, 10}

b.

{6, 2, 5}

c.

{6}

d.

{5, 2}

b.

c.

d.

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


3.

Scriei definiia corect a unui tip de date necesar pentru a memora simultan, ntr-o singur
variabil de acest tip, urmtoarele caracteristici ale unui autoturism: marca (cuvnt de
maximum 20 caractere) i anul fabricaiei (numr natural), astfel nct expresia C/C++ de
mai jos s aib ca valoare vechimea mainii ale crei caracteristici sunt memorate n
variabila x.
2008-x.anul_fabricatiei
(6p.)

4.

ntr-o structur static de date de tip stiv au fost introduse, n aceas


ordine, numerele ntregi, 11, 6, 2, 28, 67, ca n desenul alturat.
Reprezentai coninutul stivei prin cte un desen similar cu cel alturat,
dup fiecare dintre urmtoarele operaii, realizate n exact aceast ordine:
- extragerea a 3 elemente din stiv
- adugarea valorii 100, apoi a valorii 200.
(6p.)

5.

Scriei un program C/C++ care construiete n memorie o matrice cu 10 linii i 7 coloane ale
crei elemente sunt numere ntregi (cu maximum 3 cifre fiecare), citite de la tastatur, i
afieaz pe ecran, suma tuturor elementelor situate pe conturul matricei determinat de prima
i ultima linie respectiv prima i ultima coloan a acestei matrice.
(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

Subiectul II (30 de puncte) - Varianta 032


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

Un graf orientat este memorat cu ajutorul listelor alturate de 1:(5,6);


adiacen. Suma elementelor de pe ultima linie a matricei de 2:(1,5);
3:(1,5);
adiacen asociat grafului este egal cu:

4:(1,2);
5:(2);
6:(2, 4, 5);

(4p.)
a.

2.

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


reprezentat cu ajutorul matricei de adiacen alturate. Numrul
minim de muchii ce trebuie adugate pentru ca graful s devin conex
este egal cu:
(4p.)

a.

b.

b.

c.

c.

d.

d.

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


3.

ntr-o structur de date de tip coad au fost adugate n ordine urmtoarele valori: 3, 10,
2, 8 i 6. Care este ultima valoare care s-a extras din coad dac s-au efectuat, n ordine,
urmtoarele operaii: extragerea unui element, adugarea valorii 100, extragerea a trei
elemente.
(6p.)

4.

n secvena alturat, variabilele i, j sunt de tip ntreg, iar for (j=1;j<=5;j++)


variabila a memoreaz o matrice n care prima linie i prima for (i=1;i<=3;i++)
coloan sunt numerotate cu 1. Toate elementele matricei a[i][j]=10-j;
primesc valori n urma executrii secvenei.
Scriei n ordine, ncepnd cu prima coloan, elementele
situate pe fiecare linie a matricei care se va construi n urma
executrii secvenei alturate de program
(6p.)

5.

Scriei un program C/C++ care citete de la tastatur dou caractere c1 i c2 i un text


avnd cel mult 250 caractere (spaii i litere ale alfabetului englez), pe care l modific
nlocuind toate apariiile caracterului memorat n c1 cu cel memorat n c2 i toate apariiile
caracterului memorat n c2 cu cel memorat n c1. Programul afieaz pe linii separate ale
ecranului att textul iniial ct i textul obinut dup efectuarea nlocuirilor.
(10p.)
Exemplu: dac pentru c1 se citete a, pentru c2 se citete o iar textul citit este:
hocus pocus preparatus
se va afia :
hocus pocus preparatus
hacus pacus preporotus

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

Subiectul II (30 de puncte) - Varianta 033


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

Se consider graful neorientat cu 6 noduri, definit cu ajutorul 1: 4,5,6


listelor de adiacen alturate. n acest graf, suma gradelor 2: 3,4
tuturor nodurilor este:
(4p.)
3: 2,4

6: 1,5

14

2.

Un arbore cu rdcin are nodurile numerotate de la 1 la 18 i este reprezentat prin


vectorul de tai t:(8,8,0,3,4,3,4,7,1,2,3,3,7,8,3,5,6,8). Numrul tuturor
(4p.)
descendenilor nodului 3 este egal cu:

a.

b.

c.

c.

28

5: 1,6

a.

b.

4: 1,2,3

17

d.

d.

10

18

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


3.

Scriei definiia corect a unui tip de date necesar pentru a memora simultan ntr-o singur
variabil de acest tip, urmtoarele caracteristici ale unui cerc: abscisa i ordonata centrului
cercului (numere ntregi) i raza acestuia (numr real), astfel nct expresia C/C++ de mai
jos s calculeze diametrul cercului ale crui caracteristici sunt memorate n variabila x.
2*x.raza
(6p.)

4.

n secvena alturat, variabilele i, j i x sunt de tip ntreg, iar x=2;


variabila a memoreaz o matrice n care prima linie i prima for(j=1;j<=5;j++)
coloan sunt numerotate cu 1. Toate elementele matricei for(i=1;i<=3;i++)
{a[j][i]=x;
primesc valori n urma executrii secvenei.
x=x+1;
Scriei n ordine, ncepnd cu prima coloan, elementele
}
situate pe fiecare linie a matricei care se va construi n urma
executrii secvenei alturate.
(6p.)

5.

Scriei un program C/C++ care citete de la tastatur o fraz de maximum 255 de caractere
(litere mari ale alfabetului englez i spaii), ale crei cuvinte sunt desprite prin cte un
spaiu i afieaz pe primul rnd al ecranului numrul total al cuvintelor din fraz, iar pe
rndul urmtor de ecran, n ordine alfabetic, scrise o singur dat, consoanele care au
aprut n fraz (consoane sunt toate literele alfabetului englez, mai puin A, E, I, O, U).
Literele afiate sunt separate prin cte un spaiu.
Exemplu: dac se citete fraza LA BACALAUREAT SUBIECTELE AU FOST USOARE
se va afia:
6
B C F L R S 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

Subiectul II (30 de puncte) - Varianta 034


Pentru fiecare dintre itemii 1 i 2 scriei pe foaia de examen litera care corespunde
rspunsului corect.
Graful neorientat cu 60 de noduri, numerotate de la 1 la 60, are numai muchiile [1,60],
1.
[60,20], [2,30] i [4,30]. Numrul componentelor conexe ale grafului este egal cu:
(4p.)
a.

2.

Care dintre vectorii urmtori poate fi vectorul de tai ai unui arbore cu rdcin avnd 10
noduri, numerotate de la 1 la 10?
(4p.)

a.

(0,1,2,3,4,5,0,7,8,9)

b.

(1,2,3,4,5,7,6,8,9,0)

c.

(10,10,10,10,10,10,10,10,10,0)

d.

(9,8,7,6,5,4,3,2,1,0)

b.

56

c.

54

d.

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


3.

ntr-o list alocat static, de tip coad, sunt memorate n ordine, urmtoarele valori: 2, 3,
4:
Reprezentai coada ca n modelul de mai sus, dup fiecare dintre urmtoarele operaii,
care se realizeaz n aceast ordine:
- extragerea a dou elemente
- adugarea valorii 100
- adugarea valorii 200.
(6p.)

4.

Ce se va afia n urma executrii secvenei char c[21]="tastatura";


alturate, n care variabila c memoreaz un ir for(i=0;i<strlen(c)/2;i=i+1)
cu cel mult 20 de caractere, iar i este o cout<<c[i+1]; | printf(%c,c[i+1]);
variabil de tip ntreg?
(6p.)

5.

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


construiete n memorie i afieaz pe ecran, matricea cu n linii i n coloane, n care se vor
memora n ordinea strict cresctoare a valorii, pe linii i coloane, primele n2 numere naturale
nenule, pare, care nu sunt divizibile cu 3.
Fiecare linie a matricei se va afia pe cte o linie a ecranului, cu 2 4 8 10
14 16 20 22
elementele de pe aceeai linie separate prin cte un spaiu.
Exemplu: pentru n=4 se va construi i afia matricea alturat. 26 28 32 34
(10p.) 38 40 44 46

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

Subiectul II (30 de puncte) - Varianta 035


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

Se consider graful neorientat G=(X,U) X={1,2,3,4,5,6,7,8} U={[1,2], [2,3],


[2,4], [2,6], [4,7], [1,5], [5,6], [6,8], [7,8]}. Pentru a trasforma graful ntr-un
arbore, putem elimina:
(4p.)

a.

muchiile [1,5] i [1,2]

b.

muchia [5,6]

c.

nodul 3

d.

muchiile [2,6] i [4,7]

2.

Se consider definiia alturat. Care dintre urmtoarele struct elev{


char nume[30];
construcii este o declarare corect pentru un tablou cu 10
float nota;
elemente de tip elev?
(4p.)
};

a.

struct elev[10];

b.

struct x elev[10];

c.

x elev[10];

d.

struct elev x[10];

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


3.

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


alturate, n care variabila c memoreaz un cout<<strlen(c)<<endl;
ir cu cel mult 20 de caractere, iar variabila i | printf("%d\n",strlen(c));
este de tip ntreg?
(6p.) for(i=3;i>=0;i--)
cout<<c[i]; | printf("%c",c[i])

4.

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


reprezentat cu ajutorul listelor de adiacen alturate. Cte 2:4
componente conexe are graful i care este numrul minim de 3:1,5
4:2,8
muchii ce trebuie adugate pentru ca graful s fie conex?
5:1,3
(6p.)

5.

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


construiete n memorie o matrice cu n linii i n coloane, ale crei elemente sunt numere
ntregi citite de la tastatur. Pentru fiecare coloan a matricei, n ordine, programul afieaz
pe ecran cel mai mic numr de pe respectiva coloan. Numerele afiate vor fi separate prin
cte un spaiu.
Exemplu: pentru n=4 i matricea alturat, se vor afia pe ecran 122 103 5 10
valorile: -7 18 -10 2.
(10p.) -7 18 -10 2
107 999 59 4
1 200 100 7

BACALAUREAT 2009 - INFORMATIC, limbajul C/C++


Specializarea Matematic-informatic

6:7:10
8:4
9:10:7

Subiectul II

Ministerul Educaiei, Cercetrii i Inovrii


Centrul Naional pentru Curriculum i Evaluare n nvmntul Preuniversitar

Subiectul II (30 de puncte) - Varianta 036


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

a.

tiind c n urma executrii secvenei x=strlen(s);


alturate s-a afiat succesiunea de caractere for (i=0;i<x/2;i++)
cout<<s[i]<<s[x-i-1];
EXAMEN, care este irul de caractere
memorat de variabila s?
(4p.) |printf(%c%c,s[i],s[x-i-1]);
EAENMX

b.

ENXEAM

NEEXMA

c.

NEMAXE

d.

2.

Se consider o coad, n care au fost introduse iniial, n aceast ordine, dou


numere 2 i 1. Coninutul cozii este reprezentat n figura alturat. Notm cu
AD X operaia prin care se adaug informaia X n coad i cu EL operaia
prin care se elimin un element din coad. Asupra cozii se efectueaz, exact
n aceast ordine, operaiile AD 5; EL; AD 4; EL; AD 7. Care este coninutul
cozii dup executarea operaiilor de mai sus?
(4p.)

a.

1 5 4

b.

5 4 7

c.

7 4 5

d.

2 1 5

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


3.

Se consider un graf neorientat cu 7 noduri numerotate de la 1 la 7 i muchiile


[1,2],[1,3],[2,3],[2,4],[2,5],[2,6],[4,6],[5,7],[6,7]. Care este numrul
minim de muchii care trebuie eliminate astfel nct graful parial rezultat s conin 3
componente conexe? Care sunt aceste muchii?
(6p.)

4.

Cte muchii trebuie eliminate dintr-un graf neorientat complet cu 20 de noduri, pentru ca graful
parial obinut s fie arbore?
(6p.)

5.

Se consider o matrice cu n linii i m coloane (1n30, 1m30), ce


memoreaz numere ntregi de cel mult 4 cifre fiecare. Scriei un program
C/C++ care citete de la tastatur valorile n, m i elementele matricei i
care afieaz pe ecran, separate prin cte un spaiu, valorile minime de
pe fiecare coloan, n ordine de la ultima la prima coloan.

3
25
18
3

Exemplu: pentru n=4, m=4 i matricea alturat se vor afia pe ecran


valorile 3 7 2 3.
(10p.)

BACALAUREAT 2009 - INFORMATIC, limbajul C/C++


Specializarea Matematic-informatic

Subiectul II

4 90 10
2 7 9
3 10 4
7 20 3

Ministerul Educaiei, Cercetrii i Inovrii


Centrul Naional pentru Curriculum i Evaluare n nvmntul Preuniversitar

Subiectul II (30 de puncte) - Varianta 037


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

Fie declarrile alturate. Dac variabila x struct elev{


char nume[30];
reine informaii despre un elev, precizai
float nota;};
care este varianta corect ce afieaz prima
elev x;
liter din numele acestuia?
(4p.)

a.

cout<<x;

b.

cout<<x.nume[0];

c.

cout<<x.nume;

printf(%c,x.nume);

d.

cout<<nume;

2.

Se consider o coad, n care au fost introduse iniial, n aceast ordine, dou


numere 2 i 1. Coninutul cozii este reprezentat n figura alturat. Notm cu
AD X operaia prin care se adaug informaia X n coad i cu EL operaia prin
care se elimin un element din coad. Asupra cozii se efectueaz, exact n
aceast ordine, operaiile AD 5; EL; AD 4; EL; AD 7; EL; EL. Care este
coninutul cozii dup executarea operaiilor de mai sus?
(4p.)

a.

printf(%c,x);

printf(%c,x.nume[0]);

printf(%c,nume);

b.

4 7

c.

d.

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


3.

Se consider un graf orientat cu 5 vrfuri reprezentat n


figura alturat.
a) Care este matricea de adiacen corespunztoare
grafului?
(6p.)
b) Scriei vrfurile care au gradul intern maxim.

4.

(6p.)

Un ir cu maximum 255 de caractere conine cuvinte separate prin unul sau mai multe spaii.
Cuvintele sunt formate numai din litere mici ale alfabetului englez. Scriei un program Pascal
care citete un astfel de ir i l afieaz modificat, prima i ultima liter a fiecrui cuvnt fiind
afiat ca liter mare.
Exemplu: pentru irul: maine este
proba
la informatica se va afia:
MainE EstE
ProbA
LA InformaticA
(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

Subiectul II (30 de puncte) - Varianta 038


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

Se consider o coad, n care au fost introduse iniial, n aceast ordine,


dou numere 2 i 1. Coninutul cozii este reprezentat n figura alturat.
Notm cu AD X operaia prin care se adaug informaia X n coad i cu EL
operaia prin care se elimin un element din coad. Asupra cozii se
efectueaz, exact n aceast ordine, operaiile AD 5; EL; AD 4; EL; EL; AD
8; AD 9; EL. Care este coninutul cozii dup executarea operaiilor de mai
sus?
(4p.)

a.

8 9

b.

c.

2.

d. 4 8 9
s[0]= E;
Considerm c variabila s memoreaz irul de s[strlen(s)-1]= A;
caractere examen. Care va fi valoarea lui s dup s[strlen(s)/2-1]= N;
executarea instruciunilor scrise alturat?
(4p.) s[strlen(s)/2]= M;

a.

ExNMeA

b.

exAMen

c.

ExAMeN

d.

ExameN

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


3.

Se consider un graf neorientat cu 7 noduri, numerotate de la 1 la 7 i muchiile [1,5],


[2,3], [2,4], [2,5], [3,4], [4,5], [4,7], [5,6], [5,7].
a) Cte cicluri elementare distincte exist n graf? Dou cicluri sunt distincte dac difer prin
cel puin o muchie.
(3p.)
b) Care este lungimea maxim a unui ciclu elementar din acest graf?

(3p.)

c) Care este numrul minim de muchii care trebuie eliminate astfel nct graful parial obinut
s aib 3 componente conexe?
(6p.)
4.

Se consider o matrice ptratic cu n linii i n coloane (1n30), ce


memoreaz numere ntregi nenule de cel mult dou cifre fiecare.
Scriei un program C/C++ care citete de la tastatur valoarea n i
elementele matricei i care afieaz pe ecran ultima cifr a produsului
acelor elemente de pe diagonala secundar care au proprietatea c
sunt valori minime pe coloanele lor. Dac nu exist astfel de elemente
n matrice, se va afia mesajul NU EXISTA.
Exemplu: pentru n=4 i matricea alturat se va afia pe ecran
valoarea 1 (3*7=21).
(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

Subiectul II (30 de puncte) - Varianta 039


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

Stabilii care dintre urmtorii vectori este vector de tai pentru 0 1 0


arborele cu 7 noduri, numerotate de la 1 la 7, cu rdcina 1, 1 0 1
0 1 0
reprezentat prin matricea de adiacen alturat:
(4p.)
0 1 0
1 0 0
0 0 0
0 0 0

a.

(3, 1, 0, 2, 1, 5, 6)

c.
2.

(0, 1, 2, 2, 1, 5, 5)
(2, 1, 0, 2, 1, 5, 2)
d.
Un graf neorientat cu 7 noduri, numerotate de la 1 la 7 are muchiile [1,5], [2,3],
[2,4], [2,5], [3,4], [4,5], [4,7], [5,6], [5,7]. Cte cicluri elementare
distincte exist n graf? Dou cicluri sunt distincte dac difer prin cel puin o muchie. (4p.)

a.

b.

b.

c.

0
1
0
0
0
0
0

1
0
0
0
0
1
1

0
0
0
0
1
0
0

0
0
0
0
1
0
0

(1, 0, 2, 2, 1, 5, 5)

d.

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


3.

Se consider un graf neorientat cu 7 noduri, numerotate de la 1 la 7, i muchiile [1,5],


[1,6], [2,6], [3,4], [3,6], [4,6]. Dac se elimin nodul 6 i toate muchiile incidente
cu acesta cte componente conexe va avea subgraful rezultat ?
(6p.)

4.

for(i=1;i<=3;i++)
Considerm declaraiile:
for(j=1;j<=3;j++) a[i][j]=i+j;
int i,j,a[10][10];
for(i=1;i<=3;i++)
Ce se va afia dup executarea
secvenei de instruciuni alturate? { for(j=1;j<=3;j++)
cout<<a[i][j]; | printf(%d,a[i][j]);
(6p.)
cout<<endl; | printf(\n);
}

5.

Un ir cu maximum 255 de caractere conine cuvinte separate prin cte un spaiu. Cuvintele
sunt formate numai din litere mici ale alfabetului englez. Scriei un program C/C++ care
citete de la tastatur un astfel de ir i l afieaz pe ecran modificat, inversnd prin
oglindire doar cuvintele care ncep cu vocal, ca n exemplu. Se consider vocale literele din
mulimea {a, e, i, o, u}.
Exemplu: pentru irul: maine este proba la informatica se va afia:
maine etse proba la acitamrofni
(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

Subiectul II (30 de puncte) - Varianta 040


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

Se consider vectorul de tai" al unui arbore cu rdcin t=(3,4,0,3,3,5) ale crui


noduri sunt numerotate de la 1 la 6. Alegei afirmatia corect:
(4p.)

a.

nodurile 1, 2, 6 sunt noduri de tip frunz

b.

nodul 3 are un singur descendent direct


(fiu)

c.

nodul 6 este tatl nodului 5

d.

nodurile 4 i 6 sunt noduri de tip frunz

2.

Se consider o coad, n care au fost introduse iniial, n aceast ordine,


dou numere: 2 i 1. Coninutul cozii este reprezentat n figura alturat.
Notm cu AD X operaia prin care se adaug informaia X n coad i cu EL
operaia prin care se elimin un element din coad. Asupra cozii se
efectueaz, exact n aceast ordine, operaiile AD 10; AD 15; EL; AD 4;
EL; AD 20; EL. Care este coninutul cozii dup executarea operaiilor de
mai sus?
(4p.)

a.

20

b.

15 4

c.

4 20

d.

15 4 20

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,5],


[1,6], [2,6], [3,4], [3,6], [3,7], [4,6], [6,8], [7,8]. Dac se elimin nodul 6 i
toate muchiile incidente cu acesta cte componente conexe va avea subgraful rezultat?(6p.)

4.

for(i=1;i<=3;i++)
for(j=1;j<=3;j++)
int i,j,a[10][10];
if(i<j)a[i][j]=i;
else a[i][j]=j;
Ce se va afia dup executarea
for(i=1;i<=3;i++){
secvenei de instruciuni alturate?
for(j=1;j<=3;j++)
(6p.)
cout<<a[i][j];|printf(%d,a[i][j]);
cout<<endl;|printf(\n);}

5.

Un ir cu maximum 255 de caractere conine cuvinte formate numai din litere mici ale
alfabetului englez. Fiecare cuvant este urmat de un caracter *. Scriei un program C/C++
care citete un astfel de ir i afieaz pe ecran irul obinut prin eliminarea tuturor apariiilor
primului cuvnt, ca n exemplu.
Exemplu: pentru irul: bine*albine*foarte*bine* se va afia:
*albine*foarte**
(10p.)

Considerm declarrile:

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

Subiectul II (30 de puncte) - Varianta 041


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

Cte dintre vrfurile grafului neorientat G, reprezentat prin matricea de 0 1


adiacen alturat, au gradul un numr par?
(4p.) 1 0
0 1
0 1
1 0

a.

2.

ntr-o stiv iniial vid au fost executate urmtoarele operaii:


push 3; push 7; pop; push 5; push 1;
unde push a reprezint operaia prin care valoarea a se adaug n stiv, iar pop
reprezint operaia prin care se extrage un element din stiv.
Care este elementul situat n vrful stivei?
(4p.)

a.

b.

b.

c.

c.

d.

d.

0
1
0
1
1

0
1
1
0
1

1
0
1
1
0

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


3.

Pentru reprezentarea unui arbore cu radacin cu 10 noduri, etichetate cu numere naturale


de la 1 la 10, se utilizeaz vectorul de tai: TATA=(4, 8, 8, 0, 10, 4, 8, 6, 2, 6).
Care sunt frunzele arborelui?
(6p.)

4.

Ce se afieaz pe ecran n urma executrii for (i='a';i<='z';i++)


secvenei de program alturate tiind c if (i<'d')
cout<<i; | printf("%c",i);
variabila i este de tip char?
(6p.)

5.

Scriei un program C/C++ care citete de la tastatur un numr natural n


(1n23) i apoi construiete n memorie o matrice cu n linii i n coloane,
numerotate de la 1 la n, astfel nct fiecare element situat pe o linie i
(1in) i pe o coloan j (1jn) va fi egal cu suma dintre i i j.
Programul va afia matricea pe ecran, cte o linie a matricei pe cte o linie a
ecranului, elementele de pe aceeai linie fiind separate prin cte un spaiu.
Exemplu: dac n=4, se va afia matricea alturat.
(10p.)

BACALAUREAT 2009 - INFORMATIC, limbajul C/C++


Specializarea Matematic-informatic

2
3
4
5

3
4
5
6

4
5
6
7

Subiectul II

5
6
7
8

Ministerul Educaiei, Cercetrii i Inovrii


Centrul Naional pentru Curriculum i Evaluare n nvmntul Preuniversitar

Subiectul II (30 de puncte) - Varianta 042


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

Cte dintre vrfurile grafului neorientat G, reprezentat prin matricea de 0 0


adiacen alturat, au gradul 0?
(4p.) 0 0
0 0
1 0
1 0

a.

2.

ntr-o coad iniial vid au fost executate urmtoarele operaii:


add 1; add 2; out; add 3; add 4;
unde add x reprezint operaia prin care x se adaug n coad, iar out reprezint
operaia prin care se extrage un element din coad.
Ce valoare are elementul care a fost extras din coad?
(4p.)

a.

b.

b.

c.

c.

d.

d.

0
0
0
0
0

1
0
0
0
0

1
0
0
0
0

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


Pentru reprezentarea unui arbore cu radacin cu 9 noduri, etichetate cu numere naturale de
3.
la 1 la 9, se utilizeaz vectorul de tai: T=(5,0,2,7,3,3,2,4,7).
a) Care este lungimea maxim a unui lan elementar care leag dou noduri oarecare din
acest arbore?
(3p.)
b) Care sunt extremitile acestui lan?
(3p.)
4.

Variabila a memoreaz un tablou bidimensional cu 5 for(i=1;i<=5;i++)


for(j=1;j<=5;j++)
linii si 5 coloane, numerotate de la 1 la 5, ale crui
a[i][j]=j;
elemente sunt numere ntregi. Care este cel mai
mare element situat pe diagonala principal a
tabloului construit n urma executrii secvenei de
program alturate ?
(6p.)

5.

Scriei programul C/C++ care citete de la tastatur un ir de cel mult 40 de caractere,


format doar din litere mici ale alfabetului englez, i care afieaz pe ecran, pe o singur
linie, toate vocalele ce apar n irul citit. Vocalele vor fi afiate n ordinea apariiei lor n ir,
separate prin cte un spaiu, ca n exemplu. Se consider ca fiind vocale urmtoarele litere:
a, e, i, o, u. Dac irul citit nu conine nicio vocal, se va afia pe ecran mesajul
fara vocale.
Exemplu: dac se citete irul calculator atunci pe ecran se va afia: a u a o (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

Subiectul II (30 de puncte) - Varianta 043


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

Un graf neorientat este reprezentat prin matricea de adiacen


alturat. Cte grafuri pariale distincte, formate doar din noduri cu
gradul egal cu 2, se pot obine din graful dat? Dou grafuri sunt
distincte dac matricele lor de adiacen difer.
(4p.)

0
1
0
0
1

a.

2.

ntr-o coad iniial vid au fost executate urmtoarele operaii:


add 1; add 2; out; add 3; add 4; out;
unde add x reprezint operaia prin care valoarea x se adaug
reprezint operaia prin care se extrage un element din coad.
Cte elemente conine coada dup efectuarea operaiilor de mai sus?

a.

b.

b.

c.

c.

d.

d.

1
0
1
1
0

0
1
0
1
1

0
1
1
0
1

1
0
1
1
0

n coad, iar out


(4p.)
3

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


3.

Pentru reprezentarea unui arbore cu radacin cu 10 noduri, etichetate cu numere naturale


de la 1 la 10, se utilizeaz vectorul de tai: TATA=(4, 8, 8, 0, 10, 4, 8, 6, 2, 6).
Care este radcina arborelui i cte frunze are acesta?
(6p.)

4.

Ce se afieaz n urma executrii secvenei de strcpy(a,"informatica");


program alturate, tiind c variabilele a i b strcpy(b,a);
pot memora cte un ir de cel mult 12 cout<<strlen(b);
| printf("%d",strlen(b));
caractere?
(6p.)

5.

Scriei un program C/C++ care citete de la tastatur un numr natural n (0<n23) i apoi
construiete n memorie o matrice cu n linii i n coloane astfel nct elementele situate pe
diagonala principal sa fie egale cu 2, cele situate deasupra diagonalei principale s fie
egale cu 1, iar cele situate sub diagonala principal s fie egale cu 3.
Programul va afia matricea pe ecran, cte o linie a matricei pe o linie a 2 1 1 1
3 2 1 1
ecranului, cu cte un spaiu ntre elementele fiecrei linii.
Exemplu: dac n este 4 atunci programul va construi i va afia 3 3 2 1
matricea alturat:
(10p.) 3 3 3 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

Subiectul II (30 de puncte) - Varianta 044


Pentru fiecare dintre itemii 1 i 2 scriei pe foaia de examen litera care corespunde
rspunsului corect.
0
1
0
(4p.) 0
1

1
0
0
1
0

0
1
0
0
0

0
0
1
0
0

1
0
1
1
0

1.

Graful orientat G este reprezentat prin matricea de adiacen alturat.


Cte vrfuri din graful dat au gradul interior egal cu gradul exterior?

a.

2.

ntr-o stiv iniial vid au fost executate urmtoarele operaii:


push 1; pop; push 2; pop; push 3; push 4; pop; push 5;
unde push x reprezint operaia prin care x se introduce n stiv, iar pop reprezint
operaia prin care se extrage un element din stiv.
Cte elemente conine stiva dupa efectuarea operaiilor de mai sus?
(4p.)

a.

b.

b.

c.

c.

d.

d.

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


3.

Pentru reprezentarea unui arbore cu radacin cu 9 noduri, etichetate cu numere naturale de


la 1 la 9, se utilizeaz vectorul de tai: T=(7,0,2,7,6,2,3,6,5). Care sunt nodurile
arborelui ce au exact 2 descendeni direci (fii)?
(6p.)

4.

Ce valoare se va afia pe ecran n urma strcpy(a,"info");


executrii secvenei de program alturate, for(i=2;i<strlen(a);i++)
cout<<a[i]; | printf("%c",a[i]);
tiind c a este o variabil care
memoreaz un ir de caractere, iar i este
o variabil de tip ntreg?
(6p.)

5.

Scriei un program C/C++ care citete de la tastatur un numr natural n (0<n23) i apoi
construiete n memorie o matrice cu n linii si n coloane, format din numere naturale
nenule mai mici sau egale cu n, astfel nct s nu existe dou linii cu aceeai sum a
elementelor i nici dou coloane cu aceeai sum a elementelor.
Programul va afia matricea pe ecran, cte o linie a matricei pe o linie a ecranului, cu un
spaiu ntre elementele fiecrei linii.
Exemplu: dac n=3 atunci o soluie posibil este urmtoarea matrice:
1 1 1
1 1 2
1 2 3
(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

Subiectul II (30 de puncte) - Varianta 045


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

Graful neorientat G este dat prin matricea de adiacen alturat.


Cte vrfuri ale grafului G au gradul 1?
(4p.)

0
0
0
0
1

a.

2.

ntr-o stiv iniial vid au fost executate urmtoarele operaii:


push 1; pop; push 2; push 4; pop; push 5;
unde push x reprezint operaia ce introduce valoarea x n stiv, iar pop reprezint
operaia prin care se extrage un element din stiv.
Care este suma valorilor coninute de stiv dup efectuarea operaiilor de mai sus? (4p.)

a.

b.

b.

c.

c.

d.

d.

0
0
1
1
0

0
1
0
1
1

0
1
1
0
1

1
0
1
1
0

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


3.

Pentru reprezentarea unui arbore cu rdcin cu 9 noduri, etichetate cu numere naturale de


la 1 la 9, se utilizeaz vectorul de tai: T=(2,0,1,7,3,1,2,4,1). Care sunt
descendenii direci (fiii) ai rdcinii i cte frunze are arborele dat?
(6p.)

4.

Variabila a memoreaz elementele numere ntregi ale unui for(i=1;i<=3;i++)


tablou bidimensional cu 3 linii i 3 coloane. Care este suma for(j=1;j<=3;j++)
a[i][j]=j;
elementelor aflate pe diagonala secundar a tabloului
construit n urma executrii secvenei de program alturate ?

5.

Scriei programul C/C++ care citete de la tastatur un ir de cel mult 40 de caractere,


format doar din litere ale alfabetului englez, i care afieaz pe ecran toate irurile obinute
prin eliminarea succesiv a cte unei singure litere din irul citit, ca n exemplu. irurile se
vor afia cte unul pe cte o linie a ecranului.
Exemplu: dac se citete irul abbc atunci pe ecran se va afia:
bbc
abc
abc
abb
(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

Subiectul II (30 de puncte) - Varianta 046


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

Care dintre urmtoarele propoziii este fals pentru graful orientat G dat 0 1 1 0 0
prin matricea de adiacen alturat?
(4p.)
0 0 1 1 0
0 0 0 1 1
1 1 0 0 0
0 0 0 1 0

a.

exist cel puin un nod n graful G care b.


are gradul intern egal cu cel extern

graful G nu are circuite

c.

exist cel puin un drum ntre oricare d.


dou noduri ale grafului G

graful G are 9 arce

2.

n secvena alturat, variabila v memoreaz for ( i=k+1; i<=n; i++)


for (j=1; j<=n; j++)
elementele unei matrice cu liniile i coloanele
v[i-1][j] = v[i][j];
numerotate de la 1 la n, iar toate celelalte
n=n-1;
variabile sunt ntregi. Dac 1k<n, atunci
executarea secvenei determin:
(4p.)

a.

eliminarea liniei k din matrice

b.

adugarea liniei k n matrice

c.

eliminarea coloanei k din matrice

d.

adugarea coloanei k n matrice

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


3.

Care sunt nodurile de tip frunz ale arborelui cu rdcin, cu 9 noduri, numerotate de la 1 la 9,
al crui vector de tai este (6, 6, 8, 8, 7, 7, 0, 7, 7)?
(6p.)

4.

Notm cu Push(x) operaia prin care se introduce ntr-o stiv valoarea x, iar cu Pop
operaia prin care se extrage un element din stiv.

5.

a) Cte elemente are stiva, iniial vid, dup executarea secvenei urmtoare de instruciuni?
Push(8); Push(2); Push(4); Pop; Push(3); Pop; Pop;
(3p.)
b) Care este suma acestor elemente rmase n stiv?
(3p.)
Se consider un text format doar din spaii i litere mici ale alfabetului englez, care ncepe
cu o liter i care conine cel puin o vocal din multimea {a,e,i,o,u}. Scriei programul
C/C++ care citete de la tastatur un ir cu cel mult 100 de caractere, ca cel descris mai
sus i care determin transformarea acestuia prin nlocuirea fiecrei vocale din text cu litera
imediat urmtoare din alfabet (a se nlocuiete cu b, e se nlocuiete cu f .a.m.d.).
Programul va afia pe ecran irul obinut.
Exemplu: dac irul citit este examen de bacalaureat, dup modificare se afieaz:
fxbmfn df bbcblbvrfbt
(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

Subiectul II (30 de puncte) - Varianta 047


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

Care dintre urmtorii vectori NU poate reprezenta vectorul de tai


rdcin, cu 5 noduri, numerotate de la 1 la 5?

a.

3 1 0 1 2

2.

Cele 5 vagoane, din figura alturat, numerotate de la


1 la 5, trebuie mutate de pe linia A pe linia B.
Vagoanele sunt manevrate unul cte unul. Orice
vagon poate fi mutat doar de pe linia A pe linia C sau
de pe linia C pe linia B. Oricare alt manevr nu este
posibil. Care dintre irurile de vagoane de mai jos,
citite de la stnga la dreapta, nu poate fi obinut pe
linia B?
(4p.)

a.

5 3 4 2 1

b.

b.

2 0 1 1 2

4 2 5 3 1

c.

c.

3 4 0 2 3

3 2 4 1 5

al unui arbore cu
(4p.)

d.

4 1 1 0 2

d.

1 2 3 4 5

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


3.

Variabila s reine irul de caractere bacalaureat. Ce se afieaz la executarea


instruciunii de mai jos?
cout<<strchr(s,a);

4.

printf(%s,strchr(s,a));

n declararea alturat, cmpurile a i b ale nregistrrii reprezint struct rap


numrtorul, respectiv numitorul unei fracii. Care este expresia cu { int a, b; } f;
care se pot nlocui punctele de suspensie n secvena de mai jos int k;
astfel nct dac fracia memorat n variabila f se simplific prin
numrul natural nenul k se afieaz mesajul DA?
if ( ) cout<< DA; | printf(DA);

5.

(6p.)

(6p.)

Scriei un program C/C++ care citete de la tastatur dou numere naturale nenule m i n
(m10, n10) i cele m*n elemente (numere naturale mai mici dect 100) ale unui tablou
bidimensional cu m linii, numerotate de la 1 la m, i n coloane, numerotate de la 1 la n;
programul construiete n memorie i afieaz pe ecran tabloul dup eliminarea liniilor de
rang impar.
24 25 26
se va afia:
Exemplu: pentru m=4 i n=3 i tabloul: 21 22 23
24 25 26
30 31 32
27 28 29
30 31 32
(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

Subiectul II (30 de puncte) - Varianta 048


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

Pe tija 1 sunt aezate 5 bile, numerotate de la 1 la 5, ca n figur. Bilele trebuie mutate pe


tija 3 putndu-se folosi ca manevr
tija 2. Variantele de mai jos
Tija 2
reprezint aezarea bilelor de la Tija 1
stnga la dreapta, pe tija 3. tiind
1
3
2
5
4
c o bil nu poate trece de pe tija 2
pe tija 3 dect prin tija 1, pentru
care dintre ele s-au folosit cele mai
Tija 3
puine mutri? (o mutare reprezint
trecerea de pe o tij pe alta.)
(4p.)

a.

1 2 4 5 3

2.

In secvena alturat, variabilele s1, if(!(strcmp(s1,s2) || strcmp(s1,s3)))


val=1;
s2 i s3 rein iruri de caractere.
else
Dup executarea acesteia, variabila
val=2;
ntreag val primete valoarea 1
dac
(4p.)

a.

s1, s2, s3
caractere

rein iruri identice de b.

s1, s2, s3 rein iruri de caractere


ordonate lexicografic

c.

s1, s2, s3 rein iruri de caractere de d.


lungimi diferite

s1 este obinut prin concatenarea irurilor


reinute n s2 i s3

b.

4 2 5 3 1

c.

2 1 4 3 5

1 2 3 4 5

d.

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


0
0
0
0
0
0

1
0
1
0
1
0

1
0
0
1
0
0

1
0
1
0
0
0

0
0
0
0
0
1

0
1
0
1
0
0

3.

Care sunt arcele care alctuiesc un drum elementar de lungime


maxim de la nodul 1 la nodul 5 pentru graful orientat cu ase
noduri, numerotate de la 1 la 6, reprezentat prin matricea de
adiacen alturat?
(6p.)

4.

n declararea alturat variabila a reine n cmpurile x i y struct punct


coordonatele unui punct n planul xOy. Care este expresia a crei {
float x,y;
valoare reprezint distana punctului respectiv fa de originea axelor
}a;
de coordonate?
(6p.)

5.

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


care construiete n memorie i afieaz pe ecran un tablou bidimensional cu n linii i n
coloane astfel nct parcurgndu-l linie cu linie de sus n jos i fiecare linie de la stnga
la dreapta se obin primele n2 numere pare nenule n ordine strict cresctoare, ca n
exemplu.
Exemplu: pentru n=4, se construiete i se afieaz tabloul 2 4 6 8
alturat.
(10p.) 10 12 14 16
18 20 22 24
26 28 30 32

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

Subiectul II (30 de puncte) - Varianta 049


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

Se consider stiva din desenul alturat. Primul element introdus n stiv


este 5. Dac se noteaz cu pop operaia prin care se extrage un element
din stiv i cu push(k) operaia prin care se introduce valoarea k n stiv,
care va fi coninutul ei dup efectuarea urmtoarelor operaii: pop; pop;
push(1); push(4);
(4p.)

a.

4 1 1 4

2.

Fiind dat un tablou bidimensional cu 20 linii i 20 coloane, cte elemente se gsesc strict
deasupra diagonalei secundare a tabloului?
(4p.)

a.

180

b.

b.

1 4 4 1

200

c.

c.

1 4 1 4

190

d.

d.

5 2 1 4

210

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


3.

4.

5.

Variabila x declarat alturat memoreaz n cmpurile med1 i struct elev {


med2 mediile semestriale ale unui elev. Scriei o expresie a crei int matricol;
float med1,med2;
valoare va fi media anual a acestui elev.
(6p.)
}x;
Se consider un graf orientat cu 6 vrfuri numerotate de la 1 la 6, ale crui arce sunt:
(2,1),(3,6),(4,1),(4,3),(4,5),(5,2), (6,4),(1,4). Dou circuite sunt distincte
dac ele difer prin cel puin un arc.
a) Care este numrul total de circuite din acest graf?

(3p.)

b) Care este numrul total de circuite elementare din acest graf?

(3p.)

Un cuvnt s, de cel mult 20 caractere, format doar din litere mici ale alfabetului englez,
conine cel puin o consoan. Scriei programul C/C++ care citete de la tastatur cuvntul
s, construiete n memorie i afieaz pe ecran cuvntul obinut prin eliminarea tuturor
consoanelor din cuvntul s. Se consider consoan oricare liter care nu se afl n
mulimea {a, e, i, o, u}.
Exemplu: dac se citete cuvntul bacalaureat, pe ecran se afieaz: aaauea (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

Subiectul II (30 de puncte) - Varianta 050


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

Fie graful orientat din figura alturat. Care este numrul de


circuite elementare distincte? Dou circuite elementare sunt
distincte dac difer prin cel puin un arc.
(4p.)

a.

2.

1 2
Elementele tabloului bidimensional din figura alturat, cu 4 linii
12
13
i 4 coloane, sunt toate numerele naturale cuprinse ntre 1 i 16
11
16
aezate n spiral, ncepnd cu primul element al primei linii i
continund n sens invers trigonometric ca n figur. Care este cel 10 9
mai mare numr situat n zona triunghiular de sub diagonala
secundar (exclusiv diagonala secundar), n cazul unui tablou
bidimensional cu 5 linii i 5 coloane generat dup aceeai
regul?
(4p.)

a.

16

b.

b.

15

c.

c.

25

d.

d.

3
3
14
15
8

4
5
6
7

22

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


3.

Care dintre nodurile arborelui din figura alturat pot fi considerate


ca fiind rdcin astfel nct astfel nct n arborele cu rdcin
rezultat fiecare nod s aib cel mult doi descendeni direci (fii)? (6p.)

4.

struct carte
{char titlu[20];
Scriei instruciunile prin care n variabila x vor fi int nr_pag;
reinute titlul romanului Mara i numrul de 325 }x;
de pagini pe care acesta l are.
(6p.)

5.

Scriei programul C/C++ care citete de la tastatur un cuvnt s de cel mult 20 litere mici ale
alfabetului englez, construiete n memorie i afieaz pe ecran cuvntul s dup eliminarea
primei i a ultimei vocale. Cuvntul s conine cel puin dou vocale. Se consider vocale literele:
a, e, i, o, u.
Exemplu: dac se citete cuvntul bacalaureat, pe ecran se afieaz: bcalauret
(10p.)

Se consider declararea alturat.

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

Subiectul II (30 de puncte) - Varianta 051


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

Considerm
declararea
alturat struct elev{
char nume[10],prenume[20];
folosit pentru a memora numele,
float medie;
prenumele i media unui elev.
}p;
Care dintre expresiile de mai jos are ca
valoare prima liter a numelui unui elev
ale crui informaii sunt memorate n
variabila p?
(4p.)

a.

p.nume[1]

b.

p.nume[0]

c.

p.nume

d.

nume[1]

2.

Se consider un graf neorientat cu 5 noduri i 9 muchii. Care dintre urmtoarele iruri de


numere pot fi gradele nodurilor grafului?
(4p.)

a.

4, 2, 6, 4, 2

b.

2, 2, 1, 2, 2

c.

1, 1, 1, 1, 1

d.

4, 3, 3, 4, 4

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


3.

n secvena alturat, variabila a memoreaz elementele x=1;


unui tablou bidimensional cu 4 linii (numerotate de la 0 la for (i=0;i<=3;i++)
3) i 4 coloane (numerotate de la 0 la 3), iar toate for (j=0;j<=3;j++)
{ if (i==j)
celelalte variabile sunt de tip ntreg.
a[i][j]=2*x;
Dup executarea secvenei de instruciuni scris alturat
else
a) ce valoare va avea elementul a[1][3]?
(3p.)
a[i][j]=x;
b) care este suma elementelor de pe diagonala principal
x=x+1;
a acestui tablou?
(3p.)
}

4.

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


vectorul Tata=(6, 0, 2, 2, 3, 3, 2, 7, 7, 9). Care este nodul rdcin i care sunt nodurile
terminale ale arborelui?
(6p.)

5.

Scriei un program C/C++ care citete de la tastatur un ir avnd maximum 30 de


caractere i afieaz pe ecran mesajul DA n cazul n care irul conine numai litere i spaii,
iar n caz contrar afiez mesajul NU.
Exemplu: dac se citete de la tastatur irul:
Ana, Bogdan au 18 ani.
atunci programul va afia mesajul Nu.
(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

Subiectul II (30 de puncte) - Varianta 052


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

Considerm declararea alturat folosit struct elev{


char nume[10],prenume[20];
pentru a memora numele, prenumele i cele
float nota1,nota2;
2 note ale unui elev.
} x;
Care dintre instruciunile de mai jos
calculeaz n variabila real m media
aritmetic a notelor elevului ale crui
informaii sunt memorate n variabila x? (4p.)

a.

m=(x.nota1+x.nota2)/2;

b.

m=(nota1+nota2)/2;

c.

x.m=(x.nota1+x.nota2)/2;

d.

m=(x,nota1+x,nota2)/2;

2.

Se consider graful neorientat din figura alturat. Care


este numrul minim de muchii ce se pot elimina astfel
nct graful parial obinut s aib exact 3 componente
conexe?
(4p.)

a.

b.

c.

d.

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


3.

n secvena alturat, variabila a memoreaz elementele x=1;


unui tablou bidimensional cu 4 linii (numerotate de la 0 la for (i=0;i<=3;i++)
3) i 4 coloane (numerotate de la 0 la 3), iar toate for (j=0;j<=3;j++)
{ if(i==j) a[i][j]=x;
celelalte variabile sunt de tip ntreg.
else a[i][j]=i+1;
Ce valoare va avea elementul a[3][3] i care este
x=x+1;
suma elementelor de pe prima linie a tabloului dup
}
executarea secvenei de instruciuni scris alturat? (6p.)

4.

Se consider o stiv n care inial au fost introduse, n aceast ordine, valorile


1, 2, 3 ca n desenul alturat. Operaia prin care se adaug elementul a n
stiv s-a notat cu Push a iar operatia prin care se extrage un element din
stiv s-a notat cu Pop. Reprezentai, dup modelul din figura alturat,
coninutul stivei dup fiecare dintre operaiile care urmeaz: Push 4, Pop,
Pop, Push 5.
(6p.)

5.

Scriei un program C/C++ care citete de la tastatur o fraz avnd maximum 100 de
caractere, n care cuvintele sunt separate prin cte un spaiu; programul construiete n
memorie i afieaz pe ecran un ir ce conine doar primul caracter al fiecruia dintre
cuvintele frazei, n ordinea n care acestea apar n fraz, ca n exemplu.
Exemplu: dac se citete fraza
Ana sustine bacalaureatul la informatica
atunci se va afia Asbli
(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

Subiectul II (30 de puncte) - Varianta 053


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

n
secvena
alturat,
variabila
x for(i=0;i<=strlen(x)-1;i=i+3)
cout<<x[i]; | printf(%c,x[i]);
memoreaz un ir cu cel mult 100 de
caractere, iar variabila i este de tip ntreg.
Care este numrul maxim de caractere pe care l poate avea irul x astfel nct secvena
alturat s afieze exact 3 caractere ale acestuia?
(4p.)

a.

2.

Se consider un graf orientat cu 5 vrfuri i 8 arce. Care dintre urmtoarele iruri de


numere pot fi gradele exterioare ale vrfurilor acestui graf?
(4p.)

a.

2, 3, 1, 1, 1

b.

2, 2, 6, 5, 1

c.

1, 0, 1, 1, 1, 1

d.

1, 1, 0, 2, 1

b.

c.

d.

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


3.

In secvena de mai jos, variabila a memoreaz elementele unui tablou bidimensional cu 5


linii (numerotate de la 1 la 5) i 5 coloane (numerotate de la 1 la 5), iar celelalte variabile
sunt de tip ntreg.
Ce valoare se va afia n urma executrii secvenei dac se prelucreaz urmtoarea
matrice?
x=0;
1 2 3 4 2
for (i=1;i<=5;i++)
6 7 8 9 4
if(a[i][i]%2!=0)
1 2 0 4 3
x=x+a[i][6-i];
7 2 1 4 5
cout<<x;
|
printf(%d,x);
1 2 3 4 5
(6p.)

4.

Se consider arborele din figura alturat.


Care este vectorul cu legturi de tip tat
pentru acest arbore? Care sunt descendenii
nodului 3?
(6p.)

5.

Scriei un program C/C++ care citete de la tastatur 4 numere naturale nenule m, n, x i y


(2<m10, 2<n20, 1x10, 1y10) i elementele unui tablou bidimensional a cu m linii,
numerotate de la 1 la m, si n coloane, numerotate de la 1 la n; programul interschimb
elementele tabloului bidimensional de pe linia x cu cele de pe linia y. Tabloul bidimensional
astfel obinut se va afia pe ecran, cte o linie a tabloului pe cte o linie a ecranului, cu un
spaiu ntre elementele fiecrei linii.
se va afia matricea
Exemplu: pentru m=4, n=3, x=1, y=3 i matricea

(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

Subiectul II (30 de puncte) - Varianta 054


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

Se consider un graf neorientat complet cu 10 vrfuri. Cte lanuri elementare distincte de


lungime 3 exist ntre vrful 2 i vrful 4? Dou lanuri sunt distincte dac difer prin cel
puin o muchie.
(4p.)

a.

90

2.

Se consider graful orientat din figura


alturat. Cte dintre vrfurile grafului au
gradul intern egal cu gradul extern?

b.

28

c.

45

d.

56

d.

(4p.)

a.

b.

c.

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


3.

n secvena alturat, variabila x strcpy(x,bac2008);


memoreaz un ir de caractere, iar toate k1=strlen(x);
k2=0;
celelalte variabile sunt de tip ntreg.
Ce valori au variabilele k1 i k2 dup for (i=0;i<strlen(x);i++)
if( x[i]>=0 && x[i]<=9)
executarea secvenei de instruciuni
k2=k2+1;
alturate?
(6p.)

4.

Consideram urmtoarele declarri:


int a[10][10],i,k;
Ce valoare are variabila k dup executarea k=0;
secvenei de instruciuni alturate, dac a for(i=0;i<=9;i++)
memoreaz
elementele
unui
tablou if((1-a[i][i]%3)*(2-a[i][i]%3)==0))
k++;
bidimensional cu 10 linii (numerotate de la
0 la 9) i 10 coloane (numerotate de la 0
la 9), ce are pe fiecare linie n ordine
cresctoare numerele 1, 2, ..., 10 ?
(6p.)

5.

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


numr natural x, cu exact 2 cifre, i care construiete n memorie un tablou bidimensional
cu n linii (numerotate cu numere de la 1 la n) i n coloane (numerotate cu numere de la 1 la
n), ce are elementele de pe liniile de rang impar egale cu prima cifr a numrului x i
elementele de pe liniile de rang par egale cu ultima cifr a numrului x. Tabloul
bidimensional se va afia pe ecran, cte o linie a tabloului pe cte o linie a ecranului,
elementele fiecrei linii fiind separate prin cte un spaiu.
Exemplu: dac se citesc de la tastatur n=4 i x=13 atunci se 1 1 1 1
afieaz tabloul bidimensional alturat.
(10p.) 3 3 3 3
1 1 1 1
3 3 3 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

Subiectul II (30 de puncte) - Varianta 055


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

Considerm declararea alturat. Care dintre urmtoarele struct punct{


int x,y;
instruciuni este corect din punct de vedere sintactic?
}
p;
(4p.)

a.

p->y=p->y+1;

b.

p=9;

c.

p.x=7;

d.

p=p+1;

2.

Variabila n memoreaz un numr natural nenul. Care este numrul total de grafuri orientate
distincte care se pot forma cu aceste noduri? Dou grafuri orientate sunt distincte dac
matricele lor de adiacen sunt diferite.
(4p.)

a.

4n*(n-1)/2

b.

3n*(n-1)/2

c.

4n*(n-1)

d.

2n*(n-1)/2

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


for (i=0;i<=8;i++)
if( a[i][9-i]<a[i+1][8-i])
int i,aux,a[10][10];
{aux=a[i][9-i];
a[i][9-i]=a[i+1][8-i];
Ce valori se afieaz n urma executrii
a[i+1][8-i]=aux;}
secvenei alturate dac liniile i coloanele
cout<<a[0][9]<<
<<a[9][0];
tabloului bidimensional sunt numerotate de la
0 la 9 i iniial fiecare linie a tabloului conine, |printf(%d %d,a[0][9],a[9][0]);
de la stnga la dreapta, n ordine
descresctoare, toate numerele naturale, de
la 10 la 1?
(6p.)

3.

Considerm urmtoarele declarri:

4.

Se consider o coad n care inial au fost introduse, n aceast ordine, valorile


1, 2, 3 ca n desenul alturat. Operaia prin care se adaug valoarea a n
1
coad s-a notat cu ADD a, iar operatia prin care se extrage un element din
coad s-a notat cu EL. Reprezentai coada, ca n modelul alturat, dup fiecare
dintre operaiile: ADD 4, EL, ADD 5.
(6p.)

5.

Scriei un program C/C++ care citete de la tastatur un ir format din maximum 100
caractere, construiete n memorie i afieaz un nou ir de caractere obinut din irul iniial
prin eliminarea tuturor caracterelor care nu sunt caractere cifr. n cazul n care noul ir are
lungimea 0 se va afia mesajul ir vid.
Exemplu: dac se citete de la tastatur irul de caractere.
Ana are 17 ani .
atunci irul cerut este:
17
(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

Subiectul II (30 de puncte) - Varianta 056


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

Variabila x este utilizat pentru a memora numele, prenumele i salariul unei persoane.
Numele i prenumele pot avea cel mult 20 de litere fiecare, iar salariul este un numr
natural nenul mai mic dect 30000 . Care dintre urmtoarele declarri este corect? (4p.)

a.

float x[3][21];

b.

int x[3][21];

c.

struct persoana{
char nume[21],prenume[21];
int sal;} x;

d.

struct persoana[
char nume[21],prenume[21];
int sal;] x;

2.

Dac G este un graf neorientat cu 4 noduri, atunci numrul maxim de muchii pe care le
poate avea graful este:
(4p.)

a.

b.

c.

d.

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


3.

Fie T un arbore cu rdcin. Arborele are 8 noduri numerotate de la 1 la 8 i este descris


prin urmtorul vector de tai: (4,1,6,0,1,1,4,7). Care sunt frunzele arborelui? (6p.)

4.

Scriei o expresie C/C++ care s fie nenul dac i numai dac variabila c de tip char este
o liter mic a alfabetului englez.
(6p.)

5.

Scriei un program C/C++ care citete de la tastatur dou numere naturale n i k


(2<n<25, 0<k<n) i construiete n memorie o matrice cu n linii i n coloane format
numai din valori 1 i 2 astfel nct: elementele aflate pe primele k coloane sunt egale cu 1,
iar elementele aflate pe ultimele n-k coloane sunt egale cu 2 ca n exemplul de mai jos.
Programul afieaz pe ecran matricea construit, fiecare 1 1 1 2 2
linie a matricei pe o linie a ecranului i elementele de pe 1 1 1 2 2
aceeai linie separate prin cte un singur spaiu.
1 1 1 2 2
Exemplu: pentru n=5, k=3 se construiete n memorie i se 1 1 1 2 2
afieaz matricea alturat.
(10p.) 1 1 1 2 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

Subiectul II (30 de puncte) - Varianta 057


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

Variabila t este utilizat pentru a memora valoarea i numele autorului unei cri. Valoarea
crii este un numr natural de cel mult 3 cifre, iar numele autorului nu poate avea mai mult
de 20 de litere. Care dintre urmtoarele declarri este corect?
(4p.)

a.

struct carte{ int val;char nume;} t;

b.

struct carte{int val,nume;} t;

c.

struct carte{ int val;char nume[21];} t;

d.

struct carte{ int val[21][21];char nume;} t;

2.

Care dintre urmtoarele afirmaii este adevrat pentru orice graf neorientat G cu 3 noduri
i 3 muchii?
(4p.)

a.

este conex

b.

are dou noduri izolate

c.

nu poate avea cicluri

d.

are un nod izolat

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


Fie T un arbore cu rdcin. Arborele are 8 noduri numerotate de la 1 la 8 i este descris
3.
prin urmtorul vector de tai:(3,5,0,3,3,5,5,5).
a) Care este nodul cu cei mai muli descendeni direci (fii)?
b) Care sunt nodurile frunz ale acestui arbore?

(3p.)
(3p.)

4.

Se consider mulimea vocalelor {a,e,i,o,u}. Scriei o expresie C/C++ care s fie


nenul dac i numai dac variabila c de tip char este o vocal.
(6p.)

5.

Scriei un program C/C++ care citete de la tastatur dou numere naturale n i a


(2<n<25, 0<a<n) i construiete n memorie o matrice cu n linii i n coloane numerotate
de la 1 la n, format numai din valori 0,1 i 2 astfel nct: elementele aflate pe linia a sunt
egale cu 0, cele de deasupra liniei a sunt egale cu 1, iar elementele aflate sub linia a sunt
egale cu 2 ca n exemplul de mai jos.
Programul afieaz pe ecran matricea construit, fiecare linie a 1 1 1 1 1
matricei pe o linie a ecranului i elementele de pe aceeai linie 1 1 1 1 1
separate prin cte un singur spaiu.
1 1 1 1 1
Exemplu: pentru n=5, a=4 se construiete n memorie i se afieaz 0 0 0 0 0
matricea alturat.
(10p.) 2 2 2 2 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

Subiectul II (30 de puncte) - Varianta 058


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

Variabila t este utilizat pentru a memora numrul de exemplare disponibile ntr-o


bibliotec i titlul unei cri. Numrul de exemplare este un numr natural de cel mult 2
cifre, iar titlul nu poate avea mai mult de 20 de litere. Care dintre urmtoarele declarri este
corect?
(4p.)

a.

struct carte {
float nr,titlu;
} t;

b.

struct carte{
int nr;
char titlu[21];
} t;

c.

struct carte{
char nr; int titlu;
} t;

d.

struct carte{
long nr,titlu;
} t;

2.

Dac G este un graf neorientat cu 4 noduri i 2 muchii, atunci numrul maxim de


componente conexe pe care le poate avea graful este:
(4p.)

a.

b.

c.

d.

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


Se consider o stiv iniial vid n care se introduc, n aceast ordine, numerele
3.
1,2,3,4,5, apoi se fac dou extrageri, se introduc, n aceast ordine, numerele 6,7 i 8 i
apoi se mai fac 4 extrageri.
a) Ce numr se va afla n vrful stivei dup finalizarea acestor operaii?
(3p.)
b) Care este suma elementelor aflate n stiv dup efectuarea acestor operaii?
(3p.)
4.

Variabila a memoreaz o matrice cu 10 linii i 10 coloane, numerotate de la 1 la 10, iar i i


j sunt variabile ntregi cu valori cuprinse ntre 1 i 10. Scriei o expresie C/C++ care s fie
nenul dac i numai dac elementul a[i][j] nu se afl pe niciuna dintre diagonalele
acestei matrice.
(6p.)

5.

Scriei un program C/C++ care citete de la tastatur un ir de cel mult 50 de caractere


(litere mici i mari ale alfabetului englez, cifre i spaii), determin i afieaz pe ecran cte
litere mari, cte litere mici i cte caractere nu sunt litere n irul citit.
Exemplu: dac se citete irul: Voi lua 9 la matematica si 10 la informatica
atunci se va afia: 1 32 11.
(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

Subiectul II (30 de puncte) - Varianta 059


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

Variabila s memoreaz un ir de caractere. Care dintre urmtoarele expresii C/C++ este


nenul dac i numai dac lungimea efectiv a irului este strict mai mic dect 10? (4p.)

a.

strlen(s)<10

b.

strlen(s,10)<0

c.

leng(s)<10

d.

s-0<10

2.

Care dintre urmtoarele afirmaii este adevrat? Orice graf neorientat cu 4 noduri i 4
muchii :
(4p.)

a.

are gradele tuturor nodurilor numere pare

b.

nu are cicluri

c.

este conex

d.

este arbore

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


3.

Fie T un arbore cu rdcin. Arborele are 8 noduri numerotate de la 1 la 8 i este descris


prin urmtorul vector de tai: (4,5,0,3,4,5,4,5). Care sunt frunzele arborelui? (6p.)

4.

Fie a o variabil care memoreaz o matrice cu 10 linii i 10 coloane numerotate de la 1 la


10, iar i i j dou variabile de tip int ale cror valori sunt cuprinse ntre 1 i 10. Scriei o
expresie n limbajul C/C++ care s fie nenul dac i numai dac a[i][j] se afl pe
penultima linie i sub diagonala principal a matricei a.
(6p.)

5.

Scriei un program C/C++ care citete de la tastatur un ir de cel mult 50 de caractere


(litere mici i mari ale alfabetului englez, cifre, puncte, virgule i spaii) i afieaz pe ecran
cifra care apare de cele mai multe ori n irul citit. Dac irul conine mai multe cifre cu
numr maxim de apariii, atunci se va afia cea mai mic dintre acestea. Dac irul nu
conine cifre, se va afia pe ecran mesajul NU.
Exemplu: dac se citete irul:
Voi lua 9,5 la matematica 10 la informatica si 10 la romana
atunci se va afia cifra 0 (pentru c cifrele 0 i 1 apar de cele mai multe ori n ir i 0 este
cea mai mic dintre ele)
(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

Subiectul II (30 de puncte) - Varianta 060


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

Variabila s memoreaz un ir de caractere. Care dintre urmtoarele expresii C/C++ este


nenul dac i numai dac lungimea efectiv a irului este un numr par?
(4p.)

a.

s-2==0

b.

strlen(s,2)=0

c.

leng(s)%2

d.

strlen(s)%2==0

2.

Dac G este un graf neorientat cu 4 noduri i 2 componente conexe, atunci graful are cel
mult:
(4p.)

a.

4 muchii

b.

2 muchii

c.

3 muchii

d.

o muchie

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


3.

Dac T este un arbore cu rdcin cu 100 de noduri, care este numrul minim de frunze pe
care le poate avea T?
(6p.)

4.

Fie a o matrice cu 5 linii i 5 coloane numerotate de la 1 la 5. Fiecare element a[i][j]


(1i5, 1j5) din matrice memoreaz valoarea expresiei (i-1)*5+j. Care este
valoarea sumei elementelor de pe ultima coloan a matricei?
(6p.)

5.

Scriei un program C/C++ care citete de la tastatur un ir de cel mult 50 de caractere


(litere mici i mari ale alfabetului englez, cifre i spaii) i afieaz pe ecran litera mic cel
mai des ntlnit n irul citit. Dac exist mai multe litere mici cu numr maxim de apariii,
programul o va afia pe prima dintre ele n ordine alfabetic. Dac irul nu conine litere
mici, atunci pe ecran se va afia mesajul nu.
Exemplu: dac se citete irul:
mergem la munte
atunci se va afia: e (pentru c literele e i m apar de cele mai multe ori n ir i e este prima
dintre ele n ordine alfabetic).
(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

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
b. variantavariabila
varianta variabila
d. variabila variabila

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 maxim 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
3
6
9
0
(10p.)
1
2
3
4

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

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

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 6
2 7
3 8
4 9
5 10

11
12
13
14
15

16
17
18
19
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

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

Subiectul II (30 de puncte) - Varianta 065


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

Se consider un graf G neorientat, conex, cu 54 de noduri i 53 de muchii.


Care dintre 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

2.

a.

Dac variabila s a fost declarat astfel:


char s[15] = "INFORMATICA";
atunci strlen(s) are valoarea
10

b.

12

(4p.)
c.

15

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.

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

BACALAUREAT 2009 - INFORMATIC, limbajul C/C++


Specializarea Matematic-informatic

1 2 3 4 5
10 9 8 7 6
11 12 13 14 15
20 19 18 17 16

(10p.)

Subiectul II

Ministerul Educaiei, Cercetrii i Inovrii


Centrul Naional pentru Curriculum i Evaluare n nvmntul Preuniversitar

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

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

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 naturale 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

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 instruciune 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

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
aritmetic a notelor celor doi elevi.
(4p.) }var1,var2;

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 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

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

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 6 noduri etichetate cu numere naturale de la 1 la 6 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.

6!

c.

d.

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

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

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.)
b.

a.

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

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

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

c.

strict sub diagonala principal

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.

strict deasupra diagonalei principale


strict deasupra diagonalei secundare

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

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

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

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

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

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

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.)
1
c. 3
d. oricare dintre ele
b. 2

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

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

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

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
9
15
11
12
4
10
60
12
4 10 11 12
i matricea A:
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

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.

Scriei matricea de adiacen a arborelui cu 6 noduri, numerotate de la 1 la 6, definit prin


urmtorul vector "de tai": (0, 1, 1, 1, 3, 3).
(6p.)

4.

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


ntregi iar T este o matrice format din m linii i n for(j=1; j<=n; j++)
if ((i+j)%2==0)
coloane numerotate de la 1 la m, respectiv de la 1 la
T[i][j]=(-1)*(i+j);
n. Ce valoare are elementul maxim al acestei
else T[i][j]=i+j;
matrice, n urma executrii secvenei, dac m=3 i
n=5?
(6p.)

5.

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.
16
14 12 10
Exemplu: pentru n=2 se obine matricea alturat.
(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

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

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
5: 4
(4p.)
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
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 minim 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 for(j=1; j<=n; j++)
coloane, numerotate de la 1 la n. Care va fi suma if ((i*j)%2==0)
T[i][j]=(i*j)-n;
elementelor de pe diagonala secundar a matricei n
else T[i][j]=i+j;
urma executrii secvenei, dac n=5?
(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] i
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

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.

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.)

4.

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


variabile ntregi iar T este o matrice for(j=1; j<=n; j++)
ptratic format din n linii i n coloane if ((i*j)%2==0)
T[i][j]=(i*j)/2;
numerotate de la 1 la n. Care va fi suma
else T[i][j]=i+j;
elementelor de pe diagonala principal n
urma executrii secvenei, dac n=5? (6p.)

5.

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

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
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 par de frunze.
0 1 0
(6p.) 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 for(i=1; i<=n; i++)


ntregi iar T este o matrice ptratic format for(j=1; j<=n; j++)
if ((i+j)%3==0)
din n linii i n coloane numerotate de la 1 la
T[i][j]=(i+j)/3;
n. Care va fi suma valorilor de pe diagonala
else T[i][j]=i-j;
secundar a matricei n urma executrii
secvenei, dac n=5?
(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] i
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

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

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)*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.)
Exemplu: pentru m=3 i n=4 i tabloul de mai jos
Pe ecran se va afia:
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

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
dac punctul P este situat pe axa Ox ?
(6p.) }P;

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

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

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

Subiectul II (30 de puncte) - Varianta 096


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

Care este numrul maxim de valori egale care pot s apar ntr-un vector cu legturi de tip
tat asociat unui arbore cu rdcin care conine 10 noduri?
(4p.)

a.

cel mult 2

c.

nu pot s apar valori egale ntr-un vector d.


cu legturi de tip tat

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 principal din matricea a, n urma
executrii acestei secvene, dac n=8?
(4p.)

a.

24

b.

b.

64

c.

10
9

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, 0


definit prin matricea de adiacen alturat. Scriei arcele 0
din care este alctuit un drum de la nodul 1 la nodul 5, care 0
trece prin toate nodurile grafului.
(6p.) 0
0

4.

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

5.

Scriei un program n limbajul C/C++ care citete de la tastatur dou iruri, formate fiecare
din cel mult 20 de caractere. Primul ir reprezint numele unei persoane, iar al doilea ir
reprezint prenumele aceleiai persoane. Att numele ct i prenumele sunt formate numai
din litere ale alfabetului englez i fiecare conine cel puin o consoan. Programul
construiete n memorie i afieaz pe ecran un al treilea ir de caractere, care conine
consoanele din prenumele citit dispuse n ordinea n care apar n prenume urmate de exact
un spaiu i de numele citit.
Exemplu: dac primul ir citit este Popescu, iar al doilea este Vasile
se va construi i apoi se va afia pe ecran irul
Vsl 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

Subiectul II (30 de puncte) - Varianta 097


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

Se consider un graf neorientat 5 noduri i 3 muchii. Care este numrul maxim de noduri
cu grad 1 care pot exista n graf?
(6p.)

a.

2.

Se consider un arbore cu rdcin memorat cu ajutorul vectorului de tai


T=(2,0,1,1,1,2). Stabilii care dintre nodurile arborelui sunt situate pe nivelul 3, dac
rdcina este situat pe nivelul 1?
(4p.)

a.

3 4 5

b.

b.

c.

c.

2 6

d.

d.

1 2 6

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


3.

Se consider variabila s care memoreaz irul de caractere CARACATITA. Ce valoare va


avea s dup executarea instruciunii de mai jos?
strcpy(s,strstr(s,"TI"));

(6p.)

4.

Se consider o stiv, n care au fost introduse iniial, n aceast ordine, primele


trei numere impare 1, 3 i 5. Coninutul stivei este reprezentat n figura
alturat. Notm cu PUSH x operaia prin care se adaug informaia x n vrful
stivei i cu POP operaia prin care se extrage elementul din vrful stivei. Asupra
stivei se efectueaz, exact n aceast ordine, urmtoarele patru operaii:
POP; PUSH 4; PUSH 6; POP. Reprezentai, dup modelul din figura alturat,
coninutul stivei dup fiecare operaie.
(4p.)

5.

Se consider un tablou bidimensional cu n linii i m coloane (1n50, 1m50) ce


memoreaz numere ntregi cu cel mult dou cifre fiecare. Scriei un program n limbajul
C/C++ care citete de la tastatur valorile n, m i elementele tabloului, i care inverseaz
ordinea elementelor n cadrul fiecrei coloane, ca n exemplu. Programul va afia pe ecran,
pe n linii, matricea obinut dup inversare, elementele fiecrei linii fiind separate prin cte
un spaiu.
(10p.)
Pe ecran se va afia:
Exemplu: pentru n=4, m=3 i matricea:
3 4 5
1 7 3
7 8 9
4 5 6
4 5 6
7 8 9
1 7 3
3 4 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

Subiectul II (30 de puncte) - Varianta 098


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

Fie graful orientat G cu 5 vrfuri, numerotate cu 1,2,3,4,5, i arcele (1,2), (1,3), (1,4),
(2,3), (4,2), (4,5), (5,2), (2,4). Care dintre urmtoarele vrfuri au gradul extern
egal cu gradul intern?
(4p.)

a.

2 i 4

2.

Ce se va afia n urma executrii secvene


de instruciuni alturate, considernd c s
este o variabil ir de caractere, iar n o
variabil de tip ntreg?
(4p.)

a.

En

b.

b.

4 i 5

Een

c.

c.

1 i 2

d.

3 i 4

char a[10]="Examen";
n=strlen(a);
strcpy(a+1,a+n-1);
cout<<a;| printf("%s",a);

Exam

d.

Exn

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


3.

Scriei vectorul de tai al unui arbore cu rdcin, tiind c:


nodurile arborelui sunt numerotate cu numerele naturale distincte 1,2,3,...;
numrul nodurilor este 4 sau 6;
nodul 1 este desemnat ca rdcin;
numrul nodurilor de tip frunz este egal cu jumtate din numrul total de noduri din
arbore;
numrul de nivele pe care sunt dispuse nodurile arborelui este egal cu numrul nodurilor
de tip frunz.
(6p.)

4.

Structura de date COLET permite reinerea a dou numere reale, reprezentnd valoarea
exprimat n euro a unui colet potal, respectiv greutatea exprimat n kilograme, i un ir
de caractere reprezentnd numele oraului expeditorului, format din cel mult 30 de
caractere. Scriei n limbajul C/C++ declararea structurii COLET i o secven de instruciuni
care permite citirea valorilor componentelor variabilei x de tipul COLET. Denumii sugestiv
componentele structurii.
(6p.)

5.

Scriei un program C/C++ care citete de la tastatur un numr natural nenul n (n50) i
construiete n memorie un tablou bidimensional cu n linii i n coloane care s conin
primele n2 numere naturale pare. Prima linie a tabloului va conine, n ordine cresctoare,
valorile 0, 2,.., 2n-2; a doua linie va conine, n ordine, valorile 2n, 2n+2,.., 4n-2; a treia
linie va conine, n ordine, valorile 4n, 4n+2,.., 6n-2, iar ultima linie va conine, n ordine,
valorile 2n2-2n, 2n2-2n+2,.., 2n2-2.
Programul afieaz pe ecran matricea construit, cte o linie a matricei 0 2 4
pe cte o linie a ecranului, elementele de pe aceeai linie fiind desprite 6 8 10
12 14 16
prin cte un spaiu.
Exemplu: pentru n=3 se va afia matricea alturat.
(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

Subiectul II (30 de puncte) - Varianta 099


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

Considerm un arbore cu rdcin, n care fiecare nod are cel mult doi descendeni i x un
numr natural (x>2). tiind c rdcina se afl pe nivelul 1, atunci numrul maxim de
noduri de pe nivelul x este:
(4p.)

a.

2x

2.

Considerm variabila x care memoreaz irul de caractere ABAC. Care dintre urmtoarele
instruciuni conduc la afiarea caracterului B?
(4p.)

a.

cout<<x[strlen(x)-3];

b.

2x-1

c.

b.

| printf("%c",x[strlen(x)-3]);
c.

cout<<x[2];

2x+1

d.

2x/2

cout<<x[strlen(x)-1];
| printf("%c",x[strlen(x)-1]);

d.

| printf("%c",x[2]);

cout<<x[strlen(x)];
| printf("%c",x[strlen(x)]);

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


3.

Considerm un graf neorientat cu 5 noduri i 3 muchii format din dou componente conexe.
tiind c doar patru dintre noduri au gradul 1, scriei matricea de adiacen a grafului. (6p.)

4.

Se consider o coad, n care au fost introduse iniial, n aceast ordine,


primele trei numere impare 1, 3 i 5. Coninutul cozii este reprezentat n
figura alturat.
Notm cu AD X operaia prin care se adaug informaia X n coad i cu EL
operaia prin care se elimin un element din coad. Asupra cozii se
efectueaz, exact n aceast ordine, operaiile EL; AD 4; AD 6. Reprezentai,
dup modelul din figura alturat, coninutul cozii dup fiecare operaie.(6p.)

5.

Scriei un program C/C++ care citete de la tastatur un numr natural nenul n (n50) i
construiete n memorie un tablou bidimensional cu n linii i n coloane care s conin
primele n numere naturale nenule. Prima linie a tabloului va conine, n aceast ordine,
valorile 1,2,...,n; a doua linie va conine, n ordine, valorile 2,2,3,...,n; a treia linie
va conine, n ordine, valorile 3,3,3,4,...,n, iar ultima linie va conine valorile n,
n,..., n.
Programul afieaz pe ecran matricea construit, cte o linie a matricei 1 2 3 4 5
pe cte o linie a ecranului, elementele fiecrei linii fiind desprite prin 2 2 3 4 5
3 3 3 4 5
cte un spaiu.
Exemplu: pentru n=5 se va afia matricea alturat.
(10p.) 4 4 4 4 5
5 5 5 5 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

Subiectul II (30 de puncte) - Varianta 100


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

Se consider graful neorientat cu 5 noduri a crui matrice de adiacen are toate


elementele 1, cu excepia celor de pe diagonala principal, care sunt nule. Care este
numrul minim de muchii care pot fi eliminate astfel nct graful parial obinut s fie format
din 3 componente conexe?
(4p.)

a.

2.

Se consider lista simplu nlnuit memorat static, n tabloul de mai jos, n care fiecrui
nod al listei i corespunde cte o coloan a tabloului: pe prima linie se memoreaz
informaia din nodul respectiv, iar pe a doua linie se memoreaz indicele coloanei din
tablou la care se afl nodul urmtor din list, sau -1 dac nu exist un nod urmtor.
Ce informaii se afieaz la parcurgerea nodurilor n ordinea
n care apar n list, dac primul nod este memorat n
coloana 1?
(4p.)

a.

1,3,5,7

b.

b.

1,3,2,5,7

c.

c.

1,5,7

d.

d.

1,4,5,3,7

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


3.

Se consider arborele cu 6 noduri, numerotate de la 1 la 6, cu muchiile [2,1], [2,4],


[4,5], [6,2], [6,3]. Scriei toate nodurile desemnate ca rdcin astfel nct fiecare
arbore cu rdacin obinut s aib exact 3 frunze.
(6p.)

4.

Se consider declararea char e[20]=51+73; Care este irul memorat de variabila e


dup executarea instruciunii de mai jos?
strcpy(e,e+strlen(e)-1);

5.

(6p.)

Scriei un program C/C++ care citete de la tastatur un numr natural n (1n100)i apoi
elementele unui tablou bidimensional cu n linii i n coloane, care memoreaz numere
naturale cu cel mult 9 cifre fiecare; programul afieaz pe ecran acele valori din tablou care
sunt strict mai mici dect toate elementele cu care se nvecineaz direct (aflate pe aceeai
linie dar pe o coloan alturat sau pe aceeai coloan dar pe o linie alturat), ca n
exemplu. Numerele afiate vor fi separate prin cte un spaiu.
Exemplu: pentru n=4 i tabloul alturat se afieaz numerele: 2 0 (2 se 5 4 7 9
nvecineaz direct cu 4, 3, 6 i 9, i este mai mic dect acestea, iar 0 se 6 2 3 4
0 9 8 5
nvecineaz direct cu 6, 9 i 1 i este mai mic dect acestea).
(10p.)
1 3 8 6

BACALAUREAT 2009 - INFORMATIC, limbajul C/C++


Specializarea Matematic-informatic

Subiectul II

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