Documente Academic
Documente Profesional
Documente Cultură
2009 Info Intensiv C Variantele 1 100 PDF
2009 Info Intensiv C Variantele 1 100 PDF
Varianta 1
Centrul Naional pentru Curriculum i Evaluare n nvmntul Preuniversitar
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 2
valorile 1 i 2: . Se noteaz cu AD(x) operaia prin care se adaug elementul cu
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. 3 b. 1 c. 2 d. 5
2. 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
a. 24 b. 4 c. 4 d. 2
Pentru fiecare dintre itemii 1 i 2 scriei pe foaia de examen litera care corespunde
rspunsului corect.
1. Cte grafuri neorientate, distincte, cu 8 vrfuri se pot construi? Dou grafuri se consider
distincte dac matricele lor de adiacen sunt diferite. (4p.)
14 14 28
a. 4 b. 2 c. 4 d. 64
2. Variabila t, declarat alturat, memoreaz n cmpurile struct triunghi
a, b i c lungimile laturilor unui triunghi. Care dintre {
urmtoarele instruciuni atribuie cmpului p al variabilei float a,b,c,p;
t valoarea perimetrului triunghiului respectiv? (4p.) }t;
a. p.t=t.a+t.b+t.b; b. p.t=a.t+b.t+c.t;
c. t.p=t.a+t.b+t.c; d. t.p==t.a+t.b+t.c;
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, care este lungimea celui mai mare drum, format doar din noduri distincte?
(4p.)
a. 6 b. 5 c. 3 d. 4
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. 1 b. 2 c. 5 d. 4
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, care este lungimea celui mai mare drum, format doar din noduri distincte,
ce unete nodul 6 cu nodul 1? (4p.)
a. 1 b. 3 c. 4 d. 6
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. 4 b. 6 c. 5 d. 3
Pentru fiecare dintre itemii 1 i 2 scriei pe foaia de examen litera care corespunde
rspunsului corect.
1. ntr-un graf neorientat cu 20 muchii, fiecare nod al grafului are gradul un numr nenul. Doar
patru 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. 32 b. 36 c. 10 d. 16
2. Variabila d, declarat alturat, memoreaz n cmpurile a i b struct dreptunghi
limea i, respectiv, lungimea unui dreptunghi. Care dintre {
urmtoarele instruciuni atribuie cmpului aria al variabilei d float a,b,aria;
valoarea ariei dreptunghiului respectiv? (4p.) }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;
Pentru fiecare dintre itemii 1 i 2 scriei pe foaia de examen litera care corespunde
rspunsului corect.
Pentru fiecare dintre itemii 1 i 2 scriei pe foaia de examen litera care corespunde
rspunsului corect.
1. Care dintre variantele de mai jos reprezint declararea eficient i corect a unui tablou
bidimensional cu exact 20 de elemente, numere ntregi cu cel mult 4 cifre fiecare? (4p.)
a. int a[2][10]; b. float a[40];
c. char a[2][10]; d. int a[40];
2. O list liniar simplu nlnuit cu while (p->urm!=NULL)
cel puin dou elemente, alocat { if (p->urm->info<p->info)
dinamic, reine n cmpul info al p->urm->info=p->info;
fiecrui element cte un numr
p=p->urm;
natural de maximum 4 cifre, iar n
cmpul urm adresa elementului }
cout<<p->info;
urmtor din list sau NULL dac nu
| printf(%d,p->info);
exist un element urmtor.
Dac variabila p reine adresa primului element al listei atunci, n urma executrii secvenei
de program de mai sus se afieaz ntotdeauna: (4p.)
a. cea mai mic dintre valorile memorate de b. cea mai mare dintre valorile memorate de
elementele din list elementele din list
c. valoarea memorat de penultimul d. valoarea memorat de primul element din
element din list list
a) Scriei definiia complet a unui subprogram sub, care primete prin intermediul
singurului su parametru n un numr natural de maximum 8 cifre, i care returneaz cel
mai mare termen al irului f care este mai mic sau cel mult egal cu n.
Exemplu: dac n=83 atunci subprogramul va returna valoarea 80. (4p.)
b) Scriei un program C/C++ care citete de la tastatur un numr natural s (s10000000)
i determin scrierea lui s ca sum de termeni distinci ai irului dat folosind apeluri utile ale
subprogramului sub. Numerele astfel determinate se vor scrie pe ecran, pe aceeai linie,
separate prin cte un spaiu. i
Exemplu: dac valoarea citit de la tastatur este 63, se va afia:
40 20 3 (6p.)ce const eficiena(4p.)
Pentru fiecare dintre itemii 1 i 2 scriei pe foaia de examen litera care corespunde
rspunsului corect.
a. 3 b. 2 c. 1 d. 4
2. Se consider un graf neorientat cu 50 noduri i 32 muchii. Care este numrul maxim de
vrfuri cu gradul 0 pe care le poate avea graful? (4p.)
a. 45 b. 40 c. 41 d. 50
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 struct {
realizeaz n mod corect citirea de la tastatur a valorilor celor dou int a;
cmpuri ale variabilei x? (4p.) int b;} x;
a. cin>>x.a>>x.b; | scanf(%d%d, &x.a, &x.b);
b. cin>>a.x>>b.x; | scanf(%d%d, &a.x, &b.x);
c. cin>>x; | scanf(%d, &x);
d. cin>>a->x>>b->x; | scanf(%d%d, &a->x, &b->x);
2. ntr-o list liniar simplu nlnuit, alocat dinamic, fiecare element reine n cmpul info
o valoare ntreag, iar n cmpul urm adresa elementului urmtor din list sau NULL dac
nu exist un element urmtor. Variabila p reine adresa primului element din list.
Lista conine, n aceast ordine, while(p!=NULL && p->urm!=NULL) {
pornind de la primul element, cout<<p->info; | printf(%d,p->info);
valorile: 2, 3, 4, 5, 6, 7, 8. Ce se va p->urm=p->urm->urm;
afia n urma executrii secvenei p=p->urm;
de instruciuni alturat? (4p.) }
a. 2 4 6 b. 2 4 6 8 c. 2 4 8 d. 2 5 8
Pentru fiecare dintre itemii 1 i 2 scriei pe foaia de examen litera care corespunde
rspunsului corect.
1. Variabilele x i y sunt de tip ntreg, x memornd valoarea 8, iar y valoarea 6. Care dintre
expresiile C/C++ de mai jos are valoarea 0? (4p.)
a. 3*x-4*y==0 b. (x+y)/2 > x%y+1
c. !(x/2+2==y) d. x-y+3!=0
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 0 1 1 0 0 0
alturat. Care este lungimea maxim a unui drum, de la vrful 4 pn 0 0 0 0 1 1
la vrful 6, format din vrfuri distincte dou cte dou (lungimea unui 0 0 0 0 0 0
drum este egal cu numrul de arce care compun acel drum)? (4p.) 0 0 1 0 1 0
1 1 0 0 0 1
1 0 1 0 0 0
a. 4 b. 3 c. 1 d. 5
2. Cte grafuri neorientate, distincte, cu 5 vrfuri, se pot construi? Dou grafuri se consider
distincte dac matricele lor de adiacen sunt diferite. (4p.)
4 2 10 10
a. 5 b. 5 c. 2 d. 4
Pentru fiecare dintre itemii 1 i 2 scriei pe foaia de examen litera care corespunde
rspunsului corect.
1. Un graf orientat cu 6 vrfuri, numerotate de la 1 la 6, este 0 1 1 0 0 0
reprezentat prin matricea de adiacen alturat. Care dintre 0 0 1 1 0 1
vrfurile grafului au gradul exterior un numr impar? (4p.) 1 1 0 1 0 0
0 0 0 0 1 0
0 1 0 0 0 0
0 1 0 0 1 0
a. 1, 3, 4, 5 b. 2, 3, 4, 5 c. 1, 4, 5, 6 d. 2, 3, 5
2. ntr-o list liniar simplu nlnuit, alocat dinamic, fiecare element reine n cmpul inf
un numr ntreg, iar n cmpul urm adresa urmtorului nod din list sau NULL n cazul
ultimului nod al listei. Adresa primului element al listei este reinut n variabila prim, iar p
este o variabil de acelai tip cu prim. Dac n list sunt memorate, n aceast ordine,
numerele 1, 2, 3, 4 ca n figura de mai jos, care va fi coninutul listei n urma executrii
secvenei de instruciuni alturate? (4p.)
p=prim;
prim=p->urm;
p->urm=NULL;
prim->urm->urm->urm=p;
a. 1 3 2 4 b. 2 3 4 1 c. 4 1 2 3 d. 1 4 3 2
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? (4p.)
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. O list liniar simplu nlnuit, alocat dinamic, a=p;
memoreaz n cmpul ref al fiecrui nod adresa while (a->ref != NULL)
urmtorului nod din list sau NULL n cazul n care nu { b=a;
exist un nod urmtor. Lista conine cel puin 5 noduri, a=a->ref;
adresa primului nod este memorat n variabila p, iar }
variabilele a i b sunt de acelai tip cu p. Adresa crui nod
va fi memorat n variabila b, dup executarea secvenei
alturate de program? (6p.)
a. Nodul aflat n mijlocul listei b. Penultimul nod al listei
c. Ultimul nod al listei d. Nodul al treilea din list
5. 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:
- elementele aflate pe diagonala secundar sunt toate nule;
- elementele de pe coloana i (1in), aflate deasupra diagonalei secundare, au valoarea
egal cu i;
- elementele de pe linia n-i+1 (1in), aflate sub diagonala secundar, au valoarea egal
cu i.
Programul afieaz pe ecran matricea construit, cte o linie a matricei pe 1 2 3 0
cte o linie a ecranului, elementele fiecrei linii fiind separate prin cte un 1 2 0 3
spaiu. 1 0 2 2
Exemplu: pentru n=4 se va afia matricea alturat. (10p.) 0 1 1 1
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 cte o liter distinct din
mulimea {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 b. 6 c. 4 d. 3
2. ntr-o list liniar simplu nlnuit, alocat dinamic, fiecare element reine n cmpul inf
un numr ntreg, iar n cmpul ref adresa urmtorului nod din list sau NULL n cazul
ultimului element al listei.
Adresa primului element al listei este reinut n p=prim; s=0;
variabila prim, iar variabila p este de acelai tip cu while (p->ref!=NULL)
prim. Dac n list sunt memorate, n aceast { if (p->inf%5==0)
ordine, numerele 3, 5, 18, 20, ce se va afia pe s=s+p->inf;
ecran n urma executrii secvenei alturate de p=p->ref;
program? (6p.) }
cout<<s; | printf("%d",s);
a. 21 b. 25 c. 5 d. 46
1. Utiliznd metoda backtracking se genereaz permutrile cuvntului info. Dac primele trei
soluii generate sunt: fino, fion, fnio care este cea de-a cincea soluie? (4p.)
a. foin b. fnoi c. foni d. ifon
long f2(long n)
{ if (n==0) return 0;
else return f1(n%10)+f2(n/10);
}
3. Se citete de la tastatur un numr natural n (n500) i apoi n cifre separate prin spaii. Se
cere s se afieze pe ecran cele n cifre citite, n ordine cresctoare, separate prin cte un
spaiu.
Exemplu: pentru n=19 i cifrele 3 3 0 9 2 1 2 1 3 7 1 5 2 7 1 0 3 2 3 se va
afia pe ecran 0 0 1 1 1 1 2 2 2 2 3 3 3 3 3 5 7 7 9.
a) Descriei pe scurt un algoritm de rezolvare al problemei, eficient din punct de vedere al
spaiului de memorie utilizat i al timpului de executare, explicnd n ce const eficiena
metodei alese. (4p.)
b) Scriei programul C/C++ corespunztor algoritmului descris. (6p.)
4. Fiierul text BAC.TXT conine mai multe numere naturale, cu cel mult 6 cifre fiecare, cte
un numr pe fiecare linie a fiierului.
Scriei un program C/C++ care citete toate numerele din fiierul BAC.TXT i le 11
afieaz pe ecran, n aceeai ordine, cte cinci pe fiecare linie, separate prin cte 21
un spaiu, cu excepia ultimei linii care poate conine mai puin de cinci numere. 30
Programul va afia apoi pe ecran, pe o linie separat, cte numere din fiier au 40
suma cifrelor par. 51
16
Exemplu: dac fiierul are coninutul alturat, pe ecran se vor afia numerele
17
de mai jos:
11 21 30 40 51 10
16 17 10 1 1
4 (10p.)
Pentru fiecare dintre itemii 1 i 2 scriei pe foaia de examen litera care corespunde
rspunsului corect.
1. ntr-o list liniar simplu nlnuit, alocat dinamic, fiecare element reine n cmpul ref
adresa urmtorului nod din list sau NULL n cazul ultimului element al listei, iar n cmpul
inf un numr ntreg.
Adresa primului element al p=prim;
listei este reinut n variabila while ((p->inf%2==0) && (p!=NULL))
prim, iar p este o variabil de p=p->ref;
acelai tip cu prim. Ce va if (p!=NULL)
afia pe ecran n urma cout<<(p->inf); | printf("%d",p->inf);
executrii secvenei de else
program alturate? (6p.) cout<<"NU"; | printf("NU");
a. Prima valoare impar din list, dac b. Prima valoare par din list, dac
aceasta exist i NU n caz contrar. aceasta exist i NU n caz contrar.
c. Toate valorile impare din list dac astfel d. Toate valorile pare din list dac astfel de
de valori exist i NU n caz contrar. valori exist i NU n caz contrar.
2. 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)? (4p.)
a. 3 b. 1 c. 0 d. 2
Pentru fiecare dintre itemii urmtori, scriei pe foaia de examen litera care corespunde
rspunsului corect.
1. Dac n este un numr natural impar mai mare dect 2, atunci un graf neorientat cu n
noduri, n care fiecare nod este adiacent cu exact n-1 noduri, este ntotdeauna : (4p.)
a. arbore b. graf eulerian
c. graf neconex d. graf aciclic (graf care nu conine niciun
ciclu)
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; b. struct x {float media;
int varsta;} x; int varsta;};
c. float x.media; d. struct elev {float x.media;
int x.varsta; int x.varsta};
Pentru fiecare dintre itemii urmtori, scriei pe foaia de examen litera care corespunde
rspunsului corect.
1. ntr-o list liniar simplu nlnuit, alocat dinamic, fiecare element memoreaz n cmpul
nr un numr ntreg, iar n cmpul urm adresa elementului urmtor din list sau valoarea
NULL dac nu exist un element urmtor. Lista conine exact trei elemente ale cror
adrese sunt memorate n variabilele p, q i r. tiind c p->nr==1, q->nr==2, r->nr==3,
p->urm!=NULL i r->urm==q, care este ordinea numerelor din list? (4p.)
a. 1 3 2 b. 1 2 3 c. 2 1 3 d. 3 2 1
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 printr-un
numr natural de cel mult 4 cifre i media obinut de acesta la examen, exprimat printr-un
numr real? (4p.)
a. struct x { int cod; b. struct {int cod;
float media;}; float media;} x;
c. int x.cod ; d. struct candidat {int x.cod;
float x.media; float x.media;};
Pentru fiecare dintre itemii urmtori, scriei pe foaia de examen litera care corespunde
rspunsului corect.
1. Fiecare element al unei liste circulare, simplu nlnuit, nevid, alocat dinamic,
memoreaz n cmpul val o valoare ntreag, iar n cmpul adr adresa elementului
urmtor din list. tiind c variabila p reine adresa unui element oarecare din list, iar
variabila q este de acelai tip cu p, precizai care dintre urmtoarele secvene de program
afieaz, n urma executrii, toate valorile memorate de elementele listei? (4p.)
a. q=p; q=p;
while(q!=p) {cout<<q->val; while(q!=p) { printf(%d,q->val);
q=q->adr;} q=q->adr; }
b. q=p; q=p;
while(q->adr!=p){cout<<q->val; while(q->adr!=p){ printf(%d,q->val);
q=q->adr;} q=q->adr; }
c. q=p; q=p;
do{ cout<<q->val; do{ printf(%d,q->val);
q=q->adr; q=q->adr;
}while(q!=p); }while(q!=p);
d. q=p->adr; q=p->adr;
while(q!=p) {cout<<q->val; while(q!=p) { printf(%d,q->val);
q=q->adr;} q=q->adr; }
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;
Pentru fiecare dintre itemii urmtori, scriei pe foaia de examen litera care corespunde
rspunsului corect.
1. Un graf neorientat este complet dac oricare dou noduri distincte ale sale sunt adiacente.
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 b. 1 c. 6 d. 21
2. Fiecare element al unei liste liniare, simplu nlnuite, alocat dinamic, reine n cmpul nr
un numr ntreg, iar n cmpul adr adresa elementului urmtor din list sau NULL dac nu
exist un element urmtor. Dac p reine adresa primului element, iar lista are cel puin
dou elemente, care dintre urmtoarele secvene de instruciuni copiaz n cmpul nr al
celui de-al doilea element al listei, coninutul cmpului nr al primului element din list?(4p.)
a. p->nr=p->adr->nr; b. p->adr=p->nr;
c. p->adr->nr=p->nr; d. p->adr->adr->nr=p->nr;
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 20 de linii i 20 de
coloane, numerotate de la 1 la 20, cu elementele reale. Variabila p este real, iar i este de tip
ntreg.
Care dintre instruciunile de mai jos poate nlocui punctele de p=1;
suspensie din secvena de program alturat astfel nct for(i=1;i<=20;i++)
executarea acesteia s determine memorarea n variabila p a ....
valorii produsului celor 40 de elemente aflate pe diagonalele
matricei. (4p.)
a. p=p*a[21-i][i]*a[i][21-i]; b. p=p*a[i][i]*a[i][20-i];
c. p=p*a[i][i]*a[21-i][21-i]; d. p=p*a[21-i][21-i]*a[i][21-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. 5 b. 20 c. 10 d. 17
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. 5 b. 2 c. 3 d. 4
2. Pentru declaraia alturat precizai care din struct elev
instruciunile de atribuire este greit: {char nume[20];
(6p.) int nota1;
int nota2;} e1,e2;
a. e1=e2+1; b. e1.nume[2]=x;
c. e1=e2; d. e1.nota1=e2.nota2+1;
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,
format din exact 10 caractere, este obinut prin concatenarea a dou iruri identice? (6p.)
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. Care dintre urmtoarele arce trebuie adugat unui graf orientat cu 5 0 1 0 1 0
noduri i cu matricea de adiacen alturat astfel nct n acest graf 0 0 1 0 0
s existe cel puin un drum ntre oricare dou vrfuri? (4p.) 0 0 0 0 0
0 0 0 0 1
1 0 0 0 0
a. (3 , 5) b. (4 , 1) c. (5 , 3) d. (3 , 2)
Pentru fiecare dintre itemii 1 i 2 scriei pe foaia de examen litera care corespunde
rspunsului corect.
1. ntr-o list simplu nlnuit, alocat dinamic, cu cel puin patru elemente, fiecare element
reine n cmpul urm adresa elementului urmtor din list sau NULL dac nu exist un
element urmtor. Dac variabilele p, q i r memoreaz adresele a trei noduri din list astfel
nct p -> urm = = q -> urm -> urm i r-> urm = = q atunci ordinea logic a nodurilor n
list (noduri identificate prin adrese) este: (4p.)
a. r, q, p b. p, r, q
c. p, q, r d. q, r, p
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: (6p.)
a. exist un vrf cu gradul intern n-1 b. pentru orice vrf gradul intern i gradul
extern sunt egale
c. graful nu are drumuri de lungime strict d. gradul intern al oricrui vrf este egal cu
mai mare dect 2 2
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.)
4. Scriei o secven de instruciuni C/C++ care determin, n urma executrii ei, afiarea pe
ecran a mesajului Corect dac un ir de maximum 100 caractere, memorat de variabila s,
este palindrom sau mesajul Incorect n caz contrar. Un ir de caractere este palindrom dac
citit de la nceput la sfrit este identic cu irul citit de la sfrit la nceput.
Exemplu: irul de caractere cojoc este palindrom (4p.)
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: 2 1 1 0
1 1 1 1
1 2 2 2 2 1
(10p.) 1 2 1 1
a. 2 b. 3 c. 1 d. 4
2. Care este nodul ce poate fi ales ca rdcin a arborelui din figura
alturat, astfel nct fiecare nod care nu este de tip frunz s aib
un numr impar de descendeni direci (fii) ? (4p.)
a. 3 b. 4 c. 6 d. 1
a. 1 b. 2 c. 3 d. 4
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. 3 b. 4 c. 5 d. 2
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. 1 b. 3 c. 2 d. 5
2. ntr-un arbore cu rdcin nivelul unui nod este egal cu lungimea lanului format din noduri
distincte care unete rdcina cu acel nod. Rdcina se afl pe nivelul 0. Dac toate
frunzele se afl pe nivelul 3 i oricare nod neterminal aflat pe un nivel k are exact k+1
descendeni direci (fii), care este numrul de noduri din acest arbore ? (4p.)
a. 8 b. 9 c. 10 d. 6
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? (4p.)
a. 4 b. 5 c. 3 d. 2
2. ntr-un arbore cu rdcin, nivelul unui nod este egal cu lungimea lanului
format din noduri distincte care unete rdcina cu acel nod. Care dintre
noduri trebuie ales ca rdcin n arborele din figura alturat astfel nct
pe fiecare nivel s se gseasc un numr impar de noduri? (6p.)
a. 2 b. 3 c. 6 d. 4
Fiierul text NUMERE.IN conine pe prima linie dou numere naturale nenule n i m
(1mn100), pe linia a doua n numere naturale din intervalul [1;10000] i pe linia a
treia alte m numere naturale din intervalul [1;10000]. Pe fiecare linie numerele sunt
separate prin cte un spaiu.
a) Scriei un program C/C++ care citete toate numerele din fiierul NUMERE.IN i verific,
utiliznd un algoritm eficient din punctul de vedere al timpului de executare, dac tabloul
construit cu cele n numere aflate pe linia a doua n fiier se poate reduce la tabloul construit
cu cele m numere aflate pe linia a treia n fiier. Programul afieaz pe ecran mesajul DA n
caz afirmativ i mesajul NU n caz negativ. (6p.)
b) Descriei n limbaj natural metoda utilizat i explicai n ce const eficiena ei. (4p.)
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 trebuie mutate n graful din
figura alturat astfel nct acesta s fie conex i fiecare nod s
aparin unui ciclu? (6p.)
a. 0 b. 1 c. 2 d. 3
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. 7 b. 15 c. 6 d. 5
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]. Care dintre
urmtoarele succesiuni de noduri reprezint un lan care trece o singur dat prin toate
nodurile grafului? (4p.)
a. (1, 2, 3, 4, 5, 6, 7) b. (4, 5, 3, 6, 7)
c. (7, 6, 3, 5, 4, 2, 1) d. (1, 3, 5, 4, 2, 3, 6)
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}
(10p.)
Pentru fiecare dintre itemii 1 i 2 scriei pe foaia de examen litera care corespunde
rspunsului corect.
1. Un graf orientat este reprezentat cu ajutorul listelor de 1:(5,6) 4:(1,2)
adiacen scrise alturat. Nodurile grafului care au gradul 2:(1,5,4) 5:(2)
exterior egal cu 2 sunt: (4p.) 3:(1,5) 6:(2,4,5)
a. 2 i 5 b. 1,3 i 4 c. 6 d. 2 i 3
2. Graful neorientat cu 8 noduri, numerotate de la 1 la 8, este
reprezentat cu ajutorul matricei de adiacen alturate. Pentru acest
graf este adevrat afirmaia: (4p.)
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 4: 1,3
listelor de adiacen alturate. Care dintre mulimile urmtoare 2: 5 5: 1,2,6
de noduri are toate elementele extremiti ale unor lanuri 3: 4 6: 1,5
elementare de lungime 2 cu cealalt extremitate n nodul 5?
(4p.)
a. {1,4,6} b. {2} c. {3} d. {2,6}
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
descendenilor nodului 3 este egal cu: (4p.)
a. 3 b. 6 c. 17 d. 18
Pentru fiecare dintre itemii 1 i 2 scriei pe foaia de examen litera care corespunde
rspunsului corect.
1. Graful neorientat cu 60 de noduri, numerotate de la 1 la 60, are numai muchiile: [1,60],
[60,20], [2,30] i [4,30]. Numrul componentelor conexe ale grafului este egal cu:
(4p.)
a. 3 b. 56 c. 54 d. 0
2. ntr-un arbore cu rdcin, cu 10 noduri, numerotate de la 1 la 10, nodul 10 este rdcin,
iar ntre celelate noduri exist relaia: nodul cu numrul i+1 este tatl celui cu numrul i,
pentru i{1,2,3,4,5,6,7,8,9}. Vectorul de tai al arborelui astfel definit, este: (4p.)
a. (0,1,2,3,4,5,6,7,8,9) b. (1,2,3,4,5,6,7,8,9,0)
c. (2,3,4,5,6,7,8,9,10,0) d. (9,8,7,6,5,4,3,2,1,0)
Pentru fiecare dintre itemii 1 i 2 scriei pe foaia de examen litera care corespunde
rspunsului corect.
1. Se consider graful neorientat cu mulimea nodurilor {1,2,3,4,5,6,7,8} i mulimea
muchiilor {[1,2], [2,3], [2,4], [4,7], [2,6], [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 o list alocat dinamic care are cel puin 10 elemente i fiecare element al
listei memoreaz n cmpul info un numr ntreg, iar n cmpul next adresa elementului
urmtor n list sau NULL dac nu exist un element urmtor.
Variabila p memoreaz adresa de nceput a while (p!=NULL && p->info%5!=0)
listei, iar variabila aux este de acelai tip cu p. { aux=p;
p=aux->next;
Dac n urma executrii secvenei alturate de delete p; | free(p);
program, variabila p are valoarea NULL, }
atunci: (4p.)
a. toate numerele din list sunt divizibile cu b. doar primul element din list este divizibil
5 cu 5
c. n list nu s-a memorat niciun numr d. doar ultimul element memorat n list este
divizibil cu 5 divizibil cu 5
4. a) Scriei definiia complet a unui subprogram sum care primete prin parametrul x un
numr natural de cel mult 4 cifre i returneaz suma divizorilor numrului x, diferii de 1 i
de el nsui.
Exemplu: dac x=10 se va returna valoarea 7 (7=2+5). (4p.)
b) Scriei programul C/C++ care citete de la tastatur un numr natural n (0<n<100), apoi
n numere naturale (cu cel mult 4 cifre fiecare). Programul determin, folosind apeluri utile
ale subprogramului sum, pentru fiecare numr natural citit, suma divizorilor si proprii i
afieaz pe ecran sumele determinate, n ordinea cresctoare a valorilor lor, separate prin
cte un spaiu. (6p.)
Exemplu: dac n=5 i numerele citite sunt 10 2 33 6 11
valorile afiate pe ecran vor fi: 0 0 5 7 14
deoarece suma divizorilor lui 10 este 7, suma divizorilor lui 2 este 0, suma divizorilor
lui 33 este 14, suma divizorilor lui 6 este 5, suma divizorilor lui 11 este 0.
Pentru fiecare dintre itemii 1 i 2 scriei pe foaia de examen litera care corespunde
rspunsului corect.
1. tiind c n urma executrii secvenei x=strlen(s);
alturate s-a afiat succesiunea de for (i=0;i<x/2;i++)
caractere EXAMEN, care este irul de cout<<s[i]<<s[x-i-1];
caractere memorat de variabila s? (6p.) | printf(%c%c,s[i],s[x-i-1]);
a. ENXAME b. EAENMX c. NEEXMA d. NEMAXE
2. ntr-o list liniar simplu nlnuit, alocat dinamic, fiecare element reine n cmpul adr
adresa urmtorului element din list sau NULL dac nu exist un element urmtor, iar n
cmpul info un numr ntreg. Adresa primului element al listei este memorat n variabila
p. tiind c lista conine exact 4 elemente, atunci expresia p->adr->info reprezint:
(4p.)
a. adresa celui de al doilea element b. adresa celui de al treilea element
c. valoarea memorat n al doilea element d. valoarea memorat n al treilea element
HHHHHH (4p.)
a. 0 b. 4 c. 6 d. 5
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{
reine informaii despre un elev, precizai char nume[30];
care este varianta corect ce afieaz prima float nota;};
liter din numele acestuia? (4p.) elev x;
a. cout<<nume; | printf(%c,nume);
b. cout<<x; | printf(%c,x);
c. cout<<x.nume; | printf(%c,x.nume);
d. cout<<x.nume[0]; | printf(%c,x.nume[0]);
2. ntr-o list liniar simplu nlnuit, alocat dinamic, fiecare nod reine n cmpul adr
adresa urmtorului nod din list sau NULL dac nu exist un nod urmtor, iar n cmpul
info un numr ntreg. Variabilele d i q rein adresele cte unui nod (nodul referit de d
este inclus n list, iar cel referit de q nu aparine listei). S se identifice secvena de
instruciuni care realizeaz inserarea corect, n list, a nodului referit de variabila q, ca
succesor al nodului referit de variabila d. (4p.)
a. d->adr=q; q->adr=d; b. q->adr=d->adr; d->adr=q;
c. d->adr=q; q->adr=d->adr; d. d=q; q->adr=d->adr;
4. 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 C/C++
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.)
Pentru fiecare dintre itemii 1 i 2 scriei pe foaia de examen litera care corespunde
rspunsului corect.
1. ntr-o list liniar simplu nlnuit, alocat dinamic, fiecare nod reine n cmpul adr
adresa urmtorului nod din list sau NULL dac nu exist un nod urmtor, iar n cmpul
info un numr ntreg. Considerm c o astfel de list memoreaz, n ordine, doar valorile
7, 5, 4, 9, 3. Variabila d reine adresa nodului la care este memorat valoarea 4. Care
este secvena de instruciuni care trebuie executat pentru ca lista s conin, n ordine,
doar valorile 7, 5, 9, 3? (4p.)
a. d->adr=d->adr; d->info=d->adr->info;
b. d->adr=d->adr->adr;
c. d->info=d->adr->info; d->adr=d->adr->adr;
d. d->adr->adr=d->adr; d->adr->info=d->info;
s[0]= E;
2. Considerm c variabila s memoreaz irul de caractere
s[strlen(s)-1]= A;
examen. Care va fi valoarea lui s dup executarea
s[strlen(s)/2-1]= N;
instruciunilor scrise alturat? (4p.)
s[strlen(s)/2]= M;
a. ExameN b. exAMen c. ExNMeA d. ExAMeN
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 0 1 0 0
arborele cu 7 noduri, numerotate de la 1 la 7, cu rdcina 1, 1 0 1 1 0 0 0
reprezentat prin matricea de adiacen alturat: (4p.) 0 1 0 0 0 0 0
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
a. (1, 0, 2, 2, 1, 5, 5) b. (0, 1, 2, 2, 1, 5, 5)
c. (3, 1, 0, 2, 1, 5, 6) d. (2, 1, 0, 2, 1, 5, 2)
2. 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. 7 b. 4 c. 5 d. 6
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 4 i 6 sunt noduri de tip frunz b. nodul 3 are un singur descendent direct
(fiu)
c. nodul 6 este tatl nodului 5 d. nodurile 1, 2, 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. 15 4 b. 15 4 20 c. 4 20 d. 20
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 0 0 1
adiacen alturat, au gradul un numr par? (4p.) 1 0 1 1 0
0 1 0 1 1
0 1 1 0 1
1 0 1 1 0
a. 3 b. 1 c. 2 d. 5
2. Fiecare nod al unei liste simplu nlnuite, alocat dinamic, cu cel puin 4 noduri, reine in
cmpul urm adresa nodului urmtor din list sau NULL dac nu are un nod urmtor. tiind
c variabila p reine adresa primului nod din list, variabila q reine adresa celui de-al doilea
nod din list, iar variabila r reine adresa celui de-al treilea nod din list, care este secvena
prin care se interschimb al doilea cu al treilea element din lista iniial? (4p.)
a. p->urm=r; b. p->urm=r; c. r->urm=q->urm; d. q->urm=r->urm;
q->urm=r->urm; r->urm=q->urm; q->urm=r->urm; p->urm=r;
r->urm=q; q->urm=r->urm; p->urm=r; r->urm=q->urm;
Pentru fiecare dintre itemii 1 i 2 scriei pe foaia de examen litera care corespunde
rspunsului corect.
0 0 0 1 1
1. Cte dintre vrfurile grafului neorientat G, reprezentat prin matricea de 0 0 0 0 0
adiacen alturat, au gradul 0? (4p.) 0 0 0 0 0
1 0 0 0 0
1 0 0 0 0
a. 2 b. 1 c. 3 d. 0
2. ntr-o list simplu nlnuit alocat dinamic, cu cel puin dou noduri, fiecare nod reine n
cmpul urm adresa nodului urmtor din list sau NULL dac nu are un nod urmtor. tiind
c variabila p reine adresa primului nod din list, iar variabila q este de acelai tip cu p,
care este secvena ce realizeaz eliminarea celui de-al doilea nod din list? (4p.)
a. q=p->urm; b. p->urm=p->urm->urm;
q->urm=p->urm->urm; delete p; | free(p);
delete q; | free(q);
c. q=p->urm; d. p=q->urm;
p->urm=p->urm->urm; q->urm=p->urm->urm;
delete q; | free(q); delete q; | free(q);
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 0 1 0 0 1
alturat. Cte grafuri pariale distincte, formate doar din noduri cu 1 0 1 1 0
gradul egal cu 2, se pot obine din graful dat? Dou grafuri sunt 0 1 0 1 1
distincte dac matricele lor de adiacen difer. (4p.) 0 1 1 0 1
1 0 1 1 0
a. 3 b. 1 c. 2 d. 0
2. ntr-o list simplu nlnuit, alocat dinamic, fiecare element reine n cmpul urm adresa
elementului urmtor din list sau NULL dac nu are un element urmtor. Lista are cel puin
dou elemente, variabila p reine adresa primului element, iar q reine adresa ultimului
element din list. Care este numrul de elemente din list dac expresia de mai jos are
valoarea 1?
p->urm->urm==q (4p.)
a. 2 b. 3 c. 4 d. 5
Pentru fiecare dintre itemii 1 i 2 scriei pe foaia de examen litera care corespunde
rspunsului corect.
1. Graful orientat G este reprezentat prin matricea de adiacen alturat. 0 1 0 0 1
Cte vrfuri din graful dat au gradul interior egal cu gradul exterior? 1 0 1 0 0
0 0 0 1 1
(4p.) 0 1 0 0 1
1 0 0 0 0
a. 0 b. 1 c. 3 d. 2
2. ntr-o list simplu nlnuit, alocat dinamic, cu cel puin 4 elemente, fiecare nod reine in
cmpul urm adresa nodului urmtor din list sau NULL dac nu are un nod urmtor. tiind
c iniial variabila p reine adresa primului nod din list, care dintre secvenele de program
urmtoare determin, n urma executrii, memorarea n variabila p a adresei ultimului nod
din list? (4p.)
a. while(p->urm!=NULL) p=p->urm; b. while(p!=NULL) p=p->urm;
c. p=p->urm; d. p=p->p->urm;
1. Care dintre urmtoarele variante reprezint antetul corect al unui subprogram care primete
prin parametrii x i y dou numere ntregi i furnizeaz prin parametrul m cea mai mic
dintre cele dou valori x i y? (4p.)
a. int minim(int x,int y,int m) b. void minim(int x,int y,int &m)
c. int minim(int x,int y) d. void minim(int& x,int& y,int m)
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. 0 0 0 0 1
Cte vrfuri ale grafului G au gradul 1? (4p.) 0 0 1 1 0
0 1 0 1 1
0 1 1 0 1
1 0 1 1 0
a. 1 b. 2 c. 3 d. 0
2. ntr-o list simplu nlnuit nevid, alocat dinamic, fiecare element reine n cmpul urm
adresa elementului urmtor din list sau NULL dac nu are un nod urmtor. tiind c
variabila p reine adresa primului element din list, variabila q reine adresa ultimului
element din list, iar lista este format din exact 3 elemente, care dintre urmtoarele
secvene de instruciuni determin, n urma executrii, eliminarea celui de-al doilea element
din list? (4p.)
a. p->urm=q; b. p->urm=q;
delete q; | free(p->urm); delete p->urm; | free(p->urm);
c. p=q; d. delete p->urm; | free(p->urm);
delete p->urm; | free(p->urm); p->urm=q;
1. Variabila ntreag n memoreaz un numr natural impar. Care dintre urmtoarele expresii
C/C++ are valoarea 1? (4p.)
a. !(n%2) b. n%2==0 c. n%2!=0 d. !((n+1)%2==0)
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, 0 1 1 0 0
dat 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. graful G nu are circuite
are gradul intern egal cu cel extern
c. exist cel puin un drum ntre oricare d. graful G are 9 arce
dou noduri ale grafului G
2. n secvena alturat, variabila v memoreaz for ( i=k+1; i<=n; i++)
elementele unei matrice cu liniile i coloanele for (j=1; j<=n; j++)
numerotate de la 1 la n, iar toate celelalte v[i-1][j] = v[i][j];
variabile sunt ntregi. Dac 1k<n, atunci n=n-1;
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
k=0;
while(p->urm->urm && p->inf > p->urm->inf)
{ p = p->urm; k = k + p->urm->inf; } (6p.)
5. 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.)
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 al unui arbore cu
rdcin, cu 5 noduri, numerotate de la 1 la 5? (4p.)
a. 3 1 0 1 2 b. 2 0 1 1 2 c. 3 4 0 2 3 d. 4 1 1 0 2
2. Variabila s reine irul de caractere bacalaureat. Ce se afieaz la executarea
instruciunii de mai jos?
cout<<strchr(s,a); | printf(%s,strchr(s,a)); (4p.)
a. 2 b. acalaureat c. 4 d. bcluret
(6p.)
4. n declararea alturat, cmpurile a i b ale nregistrrii struct rap
reprezint numrtorul, respectiv numitorul unei fracii. Care este { int a, b; } f;
expresia cu care se pot nlocui punctele de suspensie n secvena int k;
de mai jos astfel nct dac fracia memorat n variabila f se
simplific prin numrul natural nenul k se afieaz mesajul DA?
if ( ) cout<< DA; | printf(DA); (6p.)
5. Scriei un program C/C++ care citete de la tastatur dou numere naturale m i n
(0<m10, 0<n10) i elementele unui tablou bidimensional cu m linii i n coloane care
reine numere naturale mai mici dect 100; programul va construi i va afia pe ecran un
nou tablou bidimensional cu n linii i m coloane, obinut din primul prin rotirea acestuia n
sens trigonometric cu 90o, ca n exemplu. (10p.)
Exemplu: pentru m=4, 21 22 23 24 25 se va afia: 25 30 35 40
n=5 i tabloul: 26 27 28 29 30 24 29 34 39
31 32 33 34 35 23 28 33 38
36 37 38 39 40 22 27 32 37
21 26 31 36
4. a) Scriei n limbajul C/C++ doar antetul unui subprogram cif, care primete prin
intermediul primului parametru, nr, un numr natural cu cel mult 9 cifre i furnizeaz prin
intermediul celui de-al doilea parametru, s, suma cifrelor din scrierea lui nr. (4p.)
b) Scriei programul C/C++ care citete de la tastatur un numr natural n (0<n<25), apoi
un ir de n numere naturale nenule cu cel mult 9 cifre fiecare i care afieaz pe ecran,
separate prin cte un spaiu, numerele din ir care au suma cifrelor maxim, folosind
apeluri utile ale subprogramului cif.
Exemplu: dac pentru n=8 se citete irul de numere 274 56018 354 8219 293 287
932 634 atunci, pe ecran, se afieaz numerele 56018 8219. (6p.)
Pentru fiecare dintre itemii 1 i 2 scriei pe foaia de examen litera care corespunde
rspunsului corect.
1. ntr-o list simplu nlnuit, alocat dinamic, cu cel puin 3 elemente, fiecare element reine
n cmpul inf un numr natural, iar n cmpul urm adresa elementului urmtor din list
sau NULL dac nu exist un element urmtor. Variabila p reine adresa primului element
din list, iar variabilele q i aux sunt de acelai tip cu p. Dac se prelucreaz lista de mai
jos, care va fi coninutul listei dup executarea urmtoarei secvene de instruciuni?
q=p;
while(q->urm->urm !=NULL && q->inf >= p->inf) q = q->urm;
aux=q->urm;
q->urm=aux->urm;
delete aux;
a. 8 5 8 9 3 b. 7 8 8 9 3 c. 7 8 5 8 9 3 d. 7 8 5 9 3
2. In secvena alturat, variabilele s1, if(!(strcmp(s1,s2) || strcmp(s1,s3)))
s2 i s3 rein iruri de caractere. val=1;
Dup executarea acesteia, variabila else val=2;
ntreag val primete valoarea 1
dac: (4p.)
a. s1, s2, s3 rein iruri identice de b. s1, s2, s3 rein iruri de caractere
caractere ordonate lexicografic
c. s1, s2, s3 rein iruri de caractere de d. s1 este obinut prin concatenarea irurilor
lungimi diferite reinute n s2 i s3
Pentru fiecare dintre itemii 1 i 2 scriei pe foaia de examen litera care corespunde
rspunsului corect.
1. Care dintre urmtoarele propoziii NU este adevrat pentru graful orientat cu 6 vrfuri,
numerotate de la 1 la 6 i ale crui arce sunt: (2,1), (3,6), (4,1), (4,3), (4,5),
(5,2), (6,4)? (4p.)
a. vrful numerotat cu 6 aparine unui circuit b. vrful numerotat cu 1 are gradul extern 0
c. gradul intern al vrfului numerotat cu 4 este 1 d. graful nu are circuite
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. 200 c. 190 d. 210
(6p.)
5. Un cuvnt s, de cel mult 20 caractere, format doar din litere mici ale alfabetului englez,
conine cel puin o consoan i cel puin o vocal. 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.)
1. Se genereaz n ordine strict cresctoare numerele de cte ase cifre care conin: cifra 1 o
singur dat, cifra 2 de dou ori i cifra 3 de trei ori. Se obin, n aceast ordine, numerele:
122333, 123233, 123323, , 333221. Cte numere generate prin aceast metod au
prima cifr 1 i ultima cifr 2? (4p.)
a. 1 b. 3 c. 4 d. 8
1. Variabilele a i b sunt de tip int, iar variabilele c i d sunt de tip double. Care dintre
urmtoarele instruciuni de atribuire nu este corect din punct de vedere sintactic? (4p.)
a. c=d+2*c; b. c=2-d%2*a; c. c=sqrt(b*b); d. b=(d<=c);
Pentru fiecare dintre itemii 1 i 2 scriei pe foaia de examen litera care corespunde
rspunsului corect.
1. Care este numrul de circuite distincte ale grafului orientat dat prin 0 0 1 0 0 0
matricea de adiacen alturat? Dou circuite sunt distincte dac 1 0 1 0 1 1
difer prin cel puin un arc. (4p.) 0 0 0 0 0 0
0 0 1 0 0 0
0 0 0 0 0 0
0 0 0 1 1 0
a. 0 b. 1 c. 2 d. 3
2. ntr-o list simplu nlnuit, alocat dinamic, cu cel puin 2 elemente, fiecare element reine
n cmpul inf un numr natural, iar n cmpul urm adresa elementului urmtor din list
sau NULL dac nu exist un element urmtor. Variabila p reine adresa primului element
din list. Dac se prelucreaz lista de mai jos, care este valoarea memorat de variabila
ntreag k, la finalul executrii urmtoarei secvene de instruciuni?
k=3;
while(p->urm!=NULL && p->inf > p->urm->inf) p = p->urm;
k = k + p->urm->inf; (4p.)
a. 8 b. 10 c. 12 d. 13
Pentru fiecare dintre itemii 1 i 2 scriei pe foaia de examen litera care corespunde
rspunsului corect.
1. Considerm declararea alturat struct elev{
folosit pentru a memora numele, char nume[10],prenume[20];
prenumele i media unui elev. float medie;
Care dintre expresiile de mai jos are ca }p;
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 poate fi irul gradelor 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
4. Care este numrul maxim de muchii pe care l poate avea un graf neorientat cu 6 noduri i
3 componente conexe? (6p.)
5. Se consider un ir s avnd maximum 52 de caractere, ir ce conine numai litere mici ale
alfabetului englez i cifre. Primul caracter al irului este o liter mic, ultimul caracter al
irului este o cifr i fiecare liter mic din ir este urmat de o cifr nenul. Scriei un
program C/C++ care citete de la tastatur irul s, apoi construiete i afieaz pe ecran un
nou ir de caractere, format numai din litere mici ale alfabetului englez, ir construit dup
urmtoarea regul: fiecare liter mic se va repeta de attea ori de cte ori o indic cifra
situat pe poziia imediat urmtoare n irul iniial, ca n exemplu.
Exemplu: dac se citete de la tastatur irul a2b1f2 atunci irul cerut este aabff
(10p.)
Pentru fiecare dintre itemii 1 i 2 scriei pe foaia de examen litera care corespunde
rspunsului corect.
1. Considerm declararea alturat folosit struct elev{
pentru a memora numele, prenumele i cele char nume[10],prenume[20];
2 note ale unui elev. float nota1,nota2;
Care dintre instruciunile de mai jos } x;
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. 2 b. 4 c. 1 d. 3
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)
memoreaz un ir cu cel mult 100 de cout<<x[i]; | printf(%c,x[i]);
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. 7 b. 3 c. 9 d. 8
2. Se consider un graf orientat cu 5 vrfuri i 8 arce. Care dintre urmtoarele iruri de
numere poate fi irul gradelor 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
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 b. 28 c. 45 d. 56
2. Se consider graful orientat din figura
alturat. Cte dintre vrfurile grafului au
gradul intern egal cu gradul extern?
(4p.)
a. 3 b. 2 c. 1 d. 4
4. Se consider lista liniar simplu nlnuit, alocat dinamic, cu 6 noduri, reprezentat mai
jos, n care fiecare nod conine n cmpul info un numr natural, iar n cmpul urm adresa
nodului urmtor din list sau NULL dac nu exist un nod urmtor.
Dac adresa primului nod este memorat n variabila prim, iar variabila p este de acelai
tip cu prim, ce se afieaz la executarea secvenei de mai jos?
for(p=prim->urm;p->urm!=NULL;p=p->urm->urm)
cout<<p->info<< ; | printf(%d ,p->info); (6p.)
5. Scriei un program C/C++ care citete de la tastatur un numr natural par, n (4n10), i
un numr natural x, cu exact 3 cifre, i care construiete n memorie un tablou
bidimensional cu n linii i n coloane, ce are elementele de pe diagonala principal egale cu
prima cifr a numrului x, elementele de pe diagonala secundar egale cu ultima cifr a
numrului x, iar restul elementelor egale cu cifra din mijloc a numrului x.
Tabloul bidimensional se va afia pe ecran, cte o linie a tabloului pe cte o 1 2 2 3
linie a ecranului, elementele fiecrei linii fiind separate prin cte un spaiu. 2 1 3 2
Exemplu: dac se citesc de la tastatur n=4 i x=123 atunci se afieaz 2 3 1 2
tabloul alturat. (10p.) 3 2 2 1
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{
instruciuni este corect din punct de vedere sintactic? int x,y;
(4p.) } p;
4. Scriei un program C/C++ care citete de la tastatur un numr natural nenul n (n100)
i 2*n numere naturale de maximum 3 cifre; primele n reprezint elementele tabloului
unidimensional a, iar urmtoarele n elementele tabloului unidimensional b; fiecare tablou
are elementele numerotate ncepnd de la 1. Programul construieste n memorie i
afieaz pe ecran, cu spaii ntre ele, cele n elemente ale unui tablou unidimensional c, n
care orice element ci (1in) se obine conform definiiei urmtoare:
ci = ai concatenat cu bi, dac ai<bi
bi concatenat cu ai, altfel
Exemplu: dac se citesc n=3, a=(12,123,345) i b=(1,234,15), atunci se afieaz
elementele tabloului c astfel:
112 123234 15345 (10p.)
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{ d. struct x[
char nume[21],prenume[21]; char nume[21],prenume[21];
int sal;} x; int sal;] x;
2. Care este numrul maxim de muchii pe care-l poate avea un graf neorientat cu 6 noduri,
care nu este conex? (4p.)
a. 4 b. 15 c. 12 d. 10
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 5 noduri
i 6 muchii? (4p.)
a. G are cel puin un ciclu b. G este conex
c. G are gradele tuturor nodurilor numere d. G nu poate avea noduri cu gradul 0
pare
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 11 noduri i 13 muchii, fr noduri cu gradul 0, atunci
numrul maxim de componente conexe pe care le poate avea graful este: (4p.)
a. 2 b. 4 c. 3 d. 5
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. Fie n un numr natural, n>4. Orice graf neorientat cu n noduri i n muchii : (4p.)
a. are gradele tuturor nodurilor numere pare b. este conex
c. are cel puin un ciclu d. este arbore
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 8 noduri i 2 componente conexe, atunci graful are cel
mult: (4p.)
a. 28 de muchii b. 12 muchii c. 21 de muchii d. 16 muchii
Pentru fiecare dintre itemii 1 i 2 scriei pe foaia de examen litera care corespunde
rspunsului corect.
1. Care este numrul minim de
muchii pe care le poate avea graful
neorientat G, dac graful din figura
1 reprezint un subgraf al lui G,
iar graful reprezentat n figura 2
este graf parial al lui G? (Figura 1)
(4p.)
(Figura 2)
a. 8 b. 7 c. 5 d. 6
2. Care vor fi valorile afiate dup char s1[20]=algoritm,
executarea secvenei de program s2[20]=bioritm,s3[20]=ritm;
alturate? (4p.) if (strlen(s1)< strlen(s2))
strcat(s3,s1);
else
strcat(s3,s2);
printf(%s %s %s,s1,s2,s3); |
cout<<s1<< <<s2<< <<s3;
a. algoritmritm bioritm ritm b. algoritm bioritm ritmalgoritm
c. algoritm bioritm ritmbioritm d. algoritm bioritmritm ritm
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 eliminarea muchiilor: [5,6], [2,5], [2,3], [2,10],
[10,8], [1,3], este un arbore.
b. Graful conine un singur ciclu.
c. Cel mai lung lan elementar are lungimea 8.
d. Numrul nodurilor de grad par este egal cu numrul nodurilor de grad impar.
2. Considernd declarrile alturate, care dintre struct complex
urmtoarele referiri este corect din punct de vedere {float re,im;};
sintactic ? (4p.) complex x,y;
a. complex.re b. x.re c. complex.x d. re.x
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.
b. G este conex i prin eliminarea unei muchii oarecare din G, graful obinut nu este conex.
c. Prin eliminarea muchiei [6,7] se obine un graf parial, conex.
d. Arborele G are 5 frunze.
2. ntr-o list simplu nlnuit circular, alocat dinamic, fiecare element reine n cmpul
adr adresa elementului urmtor din list.
Dac variabilele p i q memoreaz adresele a dou elemente distincte din list astfel nct
s fie ndeplinite condiiile p==q->adr i q == p->adr , atunci lista are: (4p.)
Pentru fiecare dintre itemii 1 i 2 scriei pe foaia de examen litera care corespunde
rspunsului corect.
1. Considernd declarrile alturate, care struct datan{int zi,ln,an;};
dintre urmtoarele referiri este corect din struct elev {char nume[30];
punct de vedere sintactic ? (4p.) datan dn,da;} e;
a. e.datan.ln b. nume.e c. e.dn.an[2] d. e.dn.zi
2. ntr-o list simplu nlnuit, alocat dinamic, cu cel puin 1000 de elemente identificate prin
adrese, fiecare element reine n cmpul adr adresa elementului urmtor din list sau
NULL dac nu exist un nod urmtor. Dac q este adresa unui element din list i p o
variabil de acelai tip cu q, ce reine adresa unui alt element care nu face parte din list,
atunci inserarea elementului de la adresa p, n list, imediat dup elementul de la adresa q
se realizeaz cu ajutorul secvenei de instruciuni: (4p.)
a. p->adr=q->adr; q->adr=p; b. p=q; q->adr= p->adr;
c. q->adr=p; p->adr=q; d. q=p->adr; p->adr= q->adr;
Pentru fiecare dintre itemii 1 i 2 scriei pe foaia de examen litera care corespunde
rspunsului corect.
1. Considernd declarrile alturate, care struct punct{float x,y;};
dintre urmtoarele referiri este corect din struct cerc
punct de vedere sintactic ? (4p.) {float raza;
punct centru;} c;
a. c.punct.y b. c.raza.punct c. c.centru.x d. c.y.centru
2. ntr-o list liniar dublu nlnuit, alocat dinamic, fiecare r->info=0;
element reine n cmpul dr adresa urmtorului nod din list q= p->dr->dr->dr;
sau NULL dac nu exist un nod urmtor, n cmpul st q->st=r;
adresa nodului precedent din list sau NULL dac nu exist r->dr=q;
un nod precedent, iar n cmpul info un numr ntreg. r->st= p->dr->dr;
Adresa primului element al listei este reinut n variabila p iar p->dr->dr->dr=r;
variabilele q i r sunt de acelai tip cu p. Variabila r reine
adresa unui alt element care nu face parte din list. Dac n
list sunt memorate, ncepnd cu elementul de la adresa p,
toate numerele naturale de la 10000 la 1, n ordine
descresctoare, care va fi numrul memorat n cmpul info
al celui de-al 4-lea element din list dup executarea
secvenei alturate? (4p.)
a. 9998 b. 9999 c. 9997 d. 0
4. Care este numrul de noduri ale unui arbore cu 100 de muchii? (6p.)
5. Scriei un program n limbajul C/C++ care citete de la tastatur dou valori naturale n i m
(1n24, 1m24) i construiete n memorie un tablou bidimensional cu n linii i m coloane
format din toate numerele naturale de la 1 la n*m, ca n exemplu. Programul va afia pe
ecran, pe n linii, tabloul obinut, elementele fiecrei linii fiind separate prin cte un spaiu.
1 2 3 4 5
Exemplu: pentru n=4 i m=5 se va afia: 10 9 8 7 6
11 12 13 14 15
20 19 18 17 16
(10p.)
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{
produs ale crui caracteristici sunt memorate n char denumire[15];
variabila p, declarat alturat? (4p.) int pret;}p;
a. produs.denumire[0] b. denumire.p[0]
c. p.denumire[0] d. p->denumire[0]
2. Se consider graful neorientat definit prin mulimea nodurilor {1,2,3,4,5,6} i muchiile
[1,2],[1,3],[2,3],[6,5],[3,4],[4,5],[4,6]. Care este numrul maxim de muchii care pot fi
eliminate din graf pentru a se obine un graf parial al su care s fie conex? (4p.)
a. 1 b. 2 c. 0 d. 3
5. Scriei programul C/C++ care citete de la tastatur un cuvnt format din cel mult 50 de
caractere, doar 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
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 graful orientat definit prin mulimea vrfurilor {1,2,3,4,5,6} i arcele (1,2),
(1,6), (1,5), (2,3), (3,6), (4,1), (6,4).
Care este vrful accesibil din toate celelalte vrfuri ale grafului prin intermediul unor drumuri
elementare? (4p.)
a. 4 b. 1 c. 5 d. 6
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 orientat cu vrfurile numerotate cu numere distincte 1,2,3, ... . Graful
este reprezentat printr-o matrice de adiacen A. Precizai care este semnificaia sumei
valorilor de pe o linie oarecare x a matricei A. (4p.)
a. reprezint numrul arcelor care au ca b. reprezint numrul drumurilor care conin
extremitate iniial vrful x vrful x
c. reprezint numrul arcelor care au ca d. reprezint numrul drumurilor care
extremitate final x pornesc din vrful x
4. Fie o list liniar simplu nlnuit, alocat dinamic, ale crei noduri rein in cmpul next
adresa nodului urmtor sau NULL dac nu exist un element urmtor n list. Lista are cel
puin dou elemente. Variabila x reine adresa primului nod din list, variabila y reine adresa
celui de al doilea nod din list, , iar variabila z, de acelai tip cu x i y, reine adresa unui nod
ce nu aparine listei. Scriei o secven de instruciuni n limbajul C/C++ prin executarea creia
se insereaz n list nodul referit de z ntre cele dou noduri referite de x i y. (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.)
Exemplu: pentru m=4, n=4 i matricea alturat se va afia 5 11 -21 31 41
(care reprezint ultima cifr a valorii 355=5*71). 5 -61 71 -81
91 11 21 31
-11 31 -41 0
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];
n variabila e, declarat alturat? (4p.) int varsta;}e;
a. e->nume[0] b. e.nume[0]
c. elev.nume[0] d. nume.e[0]
2. Se consider graful orientat dat prin matricea de adiacen alturat. 0 0 0 0 0
Care este numrul de vrfuri ale grafului care au gradul interior 1 0 1 1 1
(intern) egal cu gradul exterior (extern)? (4p.) 0 0 0 1 0
1 0 0 0 1
0 1 0 0 0
a. 0 b. 3 c. 2 d. 1
4. Se consider o list liniar simplu nlnuit, alocat dinamic, ale crei noduri rein n cmpul
next adresa nodului urmtor sau NULL dac nu exist un element urmtor n list. Lista are
cel puin un element. tiind c variabila u reine adresa ultimului nod din list, scriei o
secven de instruciuni n limbajul C/C++ prin care se insereaz n list dup ultimul nod,
cu adresa reinut de u, un nou nod a crui adres este reinut de variabila v, de acelai tip
cu u? (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.)
Exemplu: pentru n=3 i matricea alturat se va afia mesajul: 1 2 3
Este triunghiular superior 0 5 6
0 0 9
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 cte unui elev n forma dat de declararea alturat, { char nume[30];
indicai care dintre urmtoarele instruciuni determin, n urma float nota;
executrii, memorarea n variabila real m a mediei aritmetice a }var1,var2;
notelor celor doi elevi. (4p.)
a. m=(var1.nota+var2.nota)/2; b. m=var1.nota+var2.nota/2;
c. m=(var1+var2).nota/2; d. m=nota(var1+var2)/2;
2. Se consider un graf orientat dat prin matricea de adiacen alturat. 0 1 1 0 1
Cte vrfuri ale grafului au proprietatea c diferena absolut a gradelor 0 0 1 1 0
(intern i extern) este egal cu 2? (4p.) 1 1 0 0 0
0 1 1 0 1
0 1 0 1 0
a. 5 b. 3 c. 4 d. 2
4. Se consider o list liniar simplu nlnuit, alocat dinamic, ale crei noduri rein n cmpul
next adresa nodului urmtor sau NULL dac nu exist un element urmtor. Lista are cel
puin dou elemente. tiind c variabila p1 reine adresa primului nod din list, iar variabila
u1 adresa ultimului nod, scriei o secven de instruciuni n limbajul C/C++, prin executarea
creia lista liniar se transform ntr-o list circular? (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.)
Exemplu: pentru m=3, n=4, 11 21 31 41 se va afia matricea 11 21 31 41
x=2 i matricea alturat 51 61 71 81 91 11 21 31
91 11 21 31
1. Pentru rezolvarea crei probleme dintre cele enumerate mai jos se poate utiliza metoda
backtracking ? (4p.)
a. determinarea reuniunii a 3 mulimi b. determinarea tuturor divizorilor unui
numr din 3 cifre
c. determinarea tuturor elementelor mai mici d. determinarea tuturor variantelor n care
dect 30000 din irul lui Fibonacci se pot genera steagurile cu 3 culori (din
mulimea: rou, galben, albastru i
alb), avnd la mijloc culoarea galben
Pentru fiecare dintre itemii 1 i 2 scriei pe foaia de examen litera care corespunde
rspunsului corect.
1. Cte noduri ale grafului orientat cu ase noduri numerotate de la 1 la 6 i urmtoarele arce:
(1,5), (1,6), (2,1), (2,3), (3,1), (3,4), (4,3), (4,5), (5,4), (6,5) au gradul
interior egal cu gradul exterior? (4p.)
a. 4 b. 6 c. 5 d. 3
2. ntr-o list liniar simplu nlnuit, alocat dinamic, cu cel puin 3 noduri, fiecare nod reine
n cmpul urm, adresa urmtorului nod din list sau NULL dac nu exist un nod urmtor.
Dac n variabila p se reine adresa primului nod din list i q este o variabil de acelai tip
cu p, atunci care dintre secvenele de mai jos elimin din list al doilea nod ? (4p.)
a. q=p->urm; b. q=p->urm;
p->urm=q->urm; delete q; | free(q);
delete q; | free(q); p->urm=q->urm;
c. delete p->urm; | free(p->urm); d. q=p->urm->urm;
p->urm=p->urm->urm; p->urm=q->urm;
delete q; | free(q);
5. Scriei programul C/C++ care citete de la tastatur, separate prin Enter, dou iruri de
caractere: un ir s de maximum 255 de caractere, care pot fi litere ale alfabetului englez i
spaii, apoi un ir c de maximum 20 de caractere. Programul va nlocui n irul s toate
apariiile irului c cu un ir de exact aceeai lungime efectiv cu c, format doar din caractere
*, ca n exemplu. irul s obinut n urma acestei prelucrri va fi afiat pe ecran. n cazul n
care c nu apare n s, programul va afia mesajul NU APARE.
Exemplu: dac irul S citit este Din departare se vede tare iar c este tare
atunci pe ecran se va afia: Din depar**** se vede **** (10p.)
3. Un numr natural se numete palindrom dac numrul citit de la stnga la dreapta este egal
cu numrul citit de la dreapta la stnga.
a) Scriei definiia complet a subprogramului Palindrom care primete prin intermediul
parametrului n un numr natural de cel mult nou cifre i returneaz 1 dac acesta este
palindrom i 0 n caz contrar. (10p.)
b) Fiierul text NUMERE.IN conine cel mult 100000 numere naturale de cel mult nou cifre
fiecare, numerele fiind desprite prin cte un spaiu. Cel puin unul dintre numere este
palindrom.
Scriei programul C/C++ care citete numerele din fiierul NUMERE.IN i, folosind apeluri
utile ale subprogramului Palindrom determin n mod eficient, din punct de vedere al
memoriei utilizate i al timpului de executare, care este cel mai mare numr palindrom citit i
de cte ori apare el n fiierul NUMERE.IN. Programul scrie n fiierul text NUMERE.OUT
numrul astfel determinat precum i numrul de apariii ale acestuia, pe rnduri diferite.
Exemplu: dac NUMERE.IN conine numerele:
23 565 78687 7887 7865 78687 7887 23 78687 98798
atunci NUMERE.OUT va conine:
78687
3 (6p.)
c) Descriei succint, n limbaj natural, metoda de rezolvare folosit la punctul b, explicnd n
ce const eficiena ei (3 4 rnduri). (4p.)
Pentru fiecare dintre itemii 1 i 2 scriei pe foaia de examen litera care corespunde
rspunsului corect.
1. Fie un arborele cu rdcin, cu 9 noduri, numerotate de la 1 la 9. Care este vectorul de
tai al acestui arbore tiind c nodurile 1, 2, 3, 4 ,5, 6, 7, 8 au exact cte un descendent
direct (fiu)? (4p.)
a. (1,2,3,4,5,6,7,8) b. (1,2,3,4,5,6,7,8,9)
c. (0,1,2,3,4,5,6,7,8) d. (0,1,2,3,4,5,6,7,8,9)
2. n secvena alturat, fiecare dintre variabilele x i s for(i=0; i<strlen(s); i++)
sunt de tipul ir de caracter, iar i este de tip ntreg. if(strcmp(x, s+i)<0)
Dac variabilele x i s memoreaz iniial irul strcpy(x,s+i);
absolvent, ce se va memora n variabila x n urma
executrii secvenei alturate? (4p.)
a. nt b. absolvent c. solvent d. vent
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 vector
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 d. 10, 1, 2, 7
2. Se consider declarrile struct A struct B struct C
alturate. Care este tipul { int x; { float x; { struct A x;
expresiei x.x.y ? (4p.) char y; long y; struct B y;
}; }; } x, y;.
a. long b. int c. char d. float
Pentru fiecare dintre itemii 1 i 2 scriei pe foaia de examen litera care corespunde
rspunsului corect.
1. ntr-o list liniar simplu nlnuit, alocat dinamic, cu cel puin 3 elemente, fiecare
element reine n cmpul urm adresa urmtorului element din list sau NULL dac nu exist
un element urmtor, iar n cmpul info informaia util de tip ntreg. Dac variabila p reine
adresa primului element din list atunci care dintre secvenele de mai jos atribuie cmpului
info al celui de al treilea element informaia util din primul element al listei? (4p.)
a. p->urm->urm->info=p->info; b. p->urm->urm->info=p->urm->info;
c. p->info->info->info = p->info; d. p->urm->urm = p->info;
2. Ce se va afia n urma executrii secvenei de program de mai jos dac variabila x
memoreaz cuvntul bacalaureat, iar variabila y memoreaz cuvntul banal?
if(strcmp(x, y) > 0) cout << x; | printf(%s, x);
else
if(strcmp(x,y) < 0) cout << y; | printf(%s, y);
else cout << imposibil; | printf(imposibil); (4p.)
a. imposibil b. bacalaureat
c. banal d. bacalaureatimposibil
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 strcpy(x, ExAMeNe NaTiOnALe);
de program alturate tiind c i este o for(i = 0; i < strlen(x); i++)
variabil de tip ntreg, iar variabila x este de if(x[i] >= A && x[i] <=N)
tip ir de caractere? (4p.) x[i] = x[i] + a-A;
cout << x; | printf(%c, x);
a. examene nationale b. examene naTiOnale
c. EXAMENE NATIONALE d. exAmeNe nAtIoNalE
2. Se consider graful neorientat cu 6 noduri, numerotate de la 1 la 6, 1: 3 5
definit prin listele de adiacent alturate. Cte muchii trebuie 2: 3 4 6
adugate n acest graf astfel nct el s devin graf complet? 3: 1 2 5
(4p.) 4: 2 6
5: 1 3
6: 2 4.
a. 16 b. 14 c. 6 d. 8
UltimaCifra.
Exemplu: dac fiierul SIR.IN are coninutul alturat, atunci 3
SIR.OUT va conine cifra 0. (10p.) 25 6
8 10
1 4589
Pentru fiecare dintre itemii 1 i 2 scriei pe foaia de examen litera care corespunde
rspunsului corect.
a. 2 3 4 5 6 1 b. 6 5 4 3 2 1 c. 2 1 4 3 6 5 d. 1 2 3 4 5 6
Pentru fiecare dintre itemii 1 i 2 scriei pe foaia de examen litera care corespunde
rspunsului corect.
1. Pentru o matrice t cu 8 linii i 8 coloane, numerotate de z=0;
la 0 la 7, cu elemente numere ntregi, secvena de for(i=0;i<8;i++)
program alturat, n care variabilele z, i, i j sunt de tip for(j=0;j<i;j++)
ntreg, determin, n urma executrii ei, memorarea n z a z=z+t[i][j];
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. ntr-o list simplu nlnuit, alocat dinamic, fiecare element reine p=prim->urm;
n cmpul urm adresa elementului urmtor din list sau NULL dac q=p->urm;
nu exist un element urmtor, iar n cmpul inf un numr ntreg. p->urm=q->urm;
Adresa primului element al listei este memorat n variabila prim, prim->urm=q;
iar variabilele p i q sunt de acelai tip cu prim. Iniial, n list sunt q->urm=p;
memorate, n aceast ordine, numerele de mai jos. Care va fi
coninutul listei dup executarea secvenei alturate? (4p.)
a. 1 3 2 4 5 6 b. 6 5 4 3 2 1 c. 1 2 4 3 5 6 d. 2 1 3 4 5 6
Pentru fiecare dintre itemii 1 i 2 scriei pe foaia de examen litera care corespunde
rspunsului corect.
1.
Pentru o matrice t cu 8 linii i 8 coloane, z=0;
numerotate de la 0 la 7, cu elemente numere for(i=0;i<8;i++)
ntregi, secvena de program alturat, n care for(j=0;j<8-i;j++)
variabilele z, i, i j sunt de tip ntreg, determin, z=z+t[i][j];
n urma executrii ei, memorarea n z a sumei
tuturor elementelor situate: (4p.)
a. strict sub diagonala secundar b. deasupra diagonalei principale, inclusiv
diagonala principal
c. deasupra diagonalei secundare, inclusiv d. strict deasupra diagonalei secundare
diagonala secundar
2.
ntr-o list simplu nlnuit, alocat dinamic, fiecare element reine n cmpul urm adresa
elementului urmtor din list, sau NULL dac nu exist un element urmtor. Adresa primului
element al listei este memorat n variabila prim, iar variabilele p i q sunt de acelai tip cu
prim. Care va fi coninutul listei de mai jos dup executarea secvenei alturate?
p=prim;
while(p->urm->urm->urm!=NULL)
p=p->urm;
q=p->urm;
(4p.) p->urm=p->urm->urm;
delete q; | free(q);
a. 1 2 3 4 5 b. 1 2 3 4 6 c. 1 3 4 5 6 d. 2 3 4 5 6
Pentru fiecare dintre itemii 1 i 2 scriei pe foaia de examen litera care corespunde
rspunsului corect.
1. Problema generrii tuturor codurilor formate din exact 4 cifre nenule, cu toate cifrele
distincte dou cte dou, este similar cu generarea tuturor: (4p.)
a. aranjamentelor de 9 elemente luate cte b. permutrilor elementelor unei mulimi cu
4 4 elemente
c. elementelor produsului cartezian d. submulimilor cu 4 elemente ale mulimii
AxAxAxA unde A este o mulime cu 9 {1,2,3,4,5,6,7,8,9}
elemente
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. { a[i][j]=k; k=k+1; }
Ce valoare va avea elementul a[8][8] dup }
executarea secvenei? (4p.)
a. 16 b. 15 c. 64 d. 10
Pentru fiecare dintre itemii 1 i 2 scriei pe foaia de examen litera care corespunde
rspunsului corect.
1. Un ir de caractere se numete palindrom dac irul citit de la stnga la dreapta este
identic cu irul citit de la dreapta spre stnga. Care dintre urmtoarele expresii C/C++ are
valoarea 1 dac i numai dac irul de caractere memorat n variabila s, avnd exact 3
caractere, este palindrom? (4p.)
a. s[0]==s[1] b. s[1]==s[2] c. s[0]==s[2] d. s[1]==s[3]
2. Care dintre urmtoarele afirmaii este adevrat pentru graful neorientat avnd mulimea
nodurilor X={1,2,3,4,5} i mulimea muchiilor U={[1,2], [1,5], [2,3], [2,4],
[3,4], [4,5]}? (4p.)
a. Este graf hamiltonian, dar nu este b. Este graf eulerian, dar nu este
eulerian. hamiltonian.
c. Este i graf hamiltonian i graf eulerian. d. Nu este graf hamiltonian, i nici nu este
graf eulerian.
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
de la nodul 1 la nodul 4, format doar din arce distincte? (4p.)
a. 5 b. 6 c. 4 d. 7
2. Un graf neorientat cu nodurile numerotate de la 1 la 4 este reprezentat prin
matricea de adiacen alturat. Care dintre afirmaiile de mai jos este
adevrat pentru acest graf? (4p.)
Pentru fiecare dintre itemii 1 i 2 scriei pe foaia de examen litera care corespunde
rspunsului corect.
1. tiind c variabila i este de tip ntreg i variabila s strcpy(s,bac2009);
reine un ir de caractere, ce se va afia la executarea for(i=0;i<strlen(s);i++)
secvenei alturate? (4p.) if(s[i]<0||s[i]>9)
cout<<s[i];
a. bac2009 b. 2009 c. bac d. 2009bac
2. Se consider graful orientat cu nodurile numerotate de la 1 la 5 i arcele (2,1), (5,1),
(1,2), (3,2), (5,2), (4,3), (2,5), (4,5). Care este lungimea maxim a unui drum
de la nodul 4 la nodul 1, format doar din arce distincte? (4p.)
a. 6 b. 5 c. 4 d. 7
(10p.)
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], [2,3], [2,5], [2,6], [3,4], [4,5], [4,6], [5,6]. Cte lanuri elementare,
distincte i de lungime 3 exist de la nodul 1 la nodul 4 n graful dat? Dou lanuri sunt
distincte dac difer prin cel puin o muchie. (4p.)
a. 2 b. 0 c. 4 d. 3
2. Un arbore cu rdcin, 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). Mulimea tuturor nodurilor de tip frunz
este: (4p.)
a. {8, 6, 1, 5} b. {1, 6} c. {8} d. {1, 6, 8}
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 vrfuri din graful dat au gradul extern impar? (4p.)
a. 4 b. 3 c. 1 d. 2
2. Un arbore cu rdcin, 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). Care este numrul minim de noduri ce
trebuie eliminate pentru ca lungimea celui mai lung lan elementar, cu o extremitate n
rdcin, s fie 3 i subgraful obinut s fie tot arbore? (4p.)
a. 4 b. 3 c. 2 d. 5
Pentru fiecare dintre itemii 1 i 2 scriei pe foaia de examen litera care corespunde
rspunsului corect.
1. n declararea alturat, variabila p memoreaz n cmpul x struct
abscisa, iar n cmpul y ordonata unui punct din planul xOy. {float x;
Dac punctul se afl chiar n originea axelor, care dintre float y;} p;
expresiile de mai jos are valoarea true? (4p.)
a. (p.x==0)&&(p.y==0) b. (x.p==0)&&(y.p==0)
c. p==0 d. (p(x)==0)&&(p(y)==0)
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. exam c. menn d. men
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 1 3 5 7
pe cte o linie a ecranului, elementele fiecrei linii fiind separate prin 8 6 4 2
cte un spaiu. 9 11 13 15
Exemplu: pentru n=2 se obine matricea alturat. (10p.) 16 14 12 10
scrie a
Pentru fiecare dintre itemii 1 i 2 scriei pe foaia de examen litera care corespunde
rspunsului corect.
1. n declararea alturat, variabila p memoreaz n cmpul x struct
abscisa, iar n cmpul y ordonata unui punct din planul xOy. Dac {float x;
punctul se afl pe cel puin una dintre axele de coordonate, care float y;}p;
dintre expresiile de mai jos are valoarea 1? (4p.)
a. p.x*p.y==0 b. (p.x==0)&&(p.y==0)
c. x.p+y.p==0 d. (p(x)==0)||(p(y)==0)
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
Pentru fiecare dintre itemii 1 i 2 scriei pe foaia de examen litera care corespunde
rspunsului corect.
1. n declararea alturat, variabila p memoreaz n cmpul x struct
abscisa, iar n cmpul y ordonata unui punct din planul xOy. {float x;
Dac punctul se afl pe cel puin una dintre axe, care dintre float y;}p;
expresiile de mai jos are valoarea 1? (4p.)
a. p.x*p.y==0 b. (p.x==0)&&(p.y==0)
c. x.p==y.p d. p(x)==0
2. Ce valoare are variabila s de tip ir de caractere dup executarea instruciunii de mai jos?
s=strcat(strstr("bacalaureat", "bac")+ strlen("2009"),"09"); (4p.)
a. BAC2009 b. laureat09 c. Bac200909 d. aur2009
Pentru fiecare dintre itemii 1 i 2 scriei pe foaia de examen litera care corespunde
rspunsului corect.
1. n declararea alturat, variabila p memoreaz n cmpul x struct
abscisa, iar n cmpul y ordonata unui punct din planul xOy. {float x;
Dac punctul se afl n interiorul suprafeei dreptunghiulare float y;}p;
determinate de punctele A(1,1), B(4,1), C(4,3), D(1,3), care
dintre expresiile de mai jos are valoarea 1? (4p.)
a. (p.x>1)&&(p.x<4)&&(p.y>1)&&(p.y<3)
b. (x.p>1)&&(x.p<4)&&(y.p>1)&&(y.p<3)
c. (p.x>1)&&(p.x<4)||(p.y>1)&&(p.y<3)
d. (p(x)>1)&&(p(x)<4)||(p(y)>1)&&(p(y)<3)
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. informat c. inform d. informBAC
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.
Programul afieaz pe ecran matricea obinut, cte o linie a 0 1 1 2
matricei pe cte o linie a ecranului, elementele fiecrei linii fiind 13 8 5 3
separate prin cte un spaiu. 21 34 55 89
Exemplu: pentru n=4 se obine matricea alturat. (10p.) 610 377 233 144
Pentru fiecare dintre itemii 1 i 2 scriei pe foaia de examen litera care corespunde
rspunsului corect.
1. n declararea alturat, variabila p memoreaz n cmpul x struct
abscisa, iar n cmpul y ordonata unui punct din planul xOy. {
Dac punctul se afl n semiplanul din dreapta axei Oy (dar nu float x;
pe aceast ax), care dintre expresiile de mai jos are valoarea float y;
1? (4p.) }p;
a. p.x>0 b. p.y>0 c. x.p+y.p>0 d. p(x)+p(y)>0
2. Ce memoreaz variabila s, de tip ir de caractere, dup executarea instruciunilor de mai
jos?
strncpy(s,"informatica",strlen("2009"));
s[strlen("2009")]='\0';
strcat(s,"BAC"); (4p.)
a. info b. infoBAC c. BACinfo d. InformaticaBAC
Pentru fiecare dintre itemii 1 i 2 scriei pe foaia de examen litera care corespunde
rspunsului corect.
1. Se consider un graf neorientat G cu 101 noduri i 101 muchii. Numrul maxim de vrfuri
izolate ale grafului poate fi: (4p.)
a. 0 b. 10 c. 50 d. 86
2. Un arbore cu rdcin, 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). Descendenii direci (fiii) ai nodului 2
sunt: (4p.)
a. 1, 6 i 10 b. 5 c. 6, 8 i 9 d. 3
5. O list dublu nlnuit, alocat dinamic, memoreaz n fiecare nod al su, n cmpul info
un caracter, iar n cmpurile prec i urm adresa nodului precedent, respectiv urmtor din
list sau NULL dac nu exist un nod precedent, respectiv urmtor n list.
Scriei programul C/C++ care citete de la tastatur un cuvnt (avnd maximum 20 de
litere), creeaz lista dublu nlnuit care va conine n ordine, de la stnga la dreapta,
caracterele cuvntului citit (cte o liter n fiecare nod al listei) i afieaz pe ecran
caracterele din list, n ordinea invers a memorrii lor.
Exemplu: dac s-a citit de la tastatur cuvntul IRINA se creaz lista de mai jos, apoi se va
afia ANIRI.
(10p.)
Pentru fiecare dintre itemii 1 i 2 scriei pe foaia de examen litera care corespunde
rspunsului corect.
1. Care din urmtoarele arce aparine grafului
orientat cu 4 vrfuri, avnd gradele din tabelul
alturat (x,yN)? (4p.)
a. (2,3) b. (1,2) c. (1,4) d. (4,1)
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
4. Scriei o expresie logic C/C++ care s struct punct {float x; float y;};
codifice condiia ca variabila v din declaraiile struct segment {
alturate s reprezinte segmentul nul struct punct origine;
(segmentul care are originea identic cu struct punct extremitate;} v;
extremitatea). (4p.)
5. Scriei un program C/C++ care citete de la tastatur numerele ntregi m i n (1m24,
1n24) 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:
2 7 1 4 14 6 3
14 6 12 3 9 22 5
9 22 8 5
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. 3 b. 0 c. 2 d. 1
2. n declararea alturat, cmpurile x i y ale nregistrrii pot struct punct
memora coordonatele carteziene ale unui punct din planul xOy. {
Care dintre urmtoarele expresii are valoarea 1 dac i numai float x,y;
}P;
dac punctul P este situat pe axa Ox ? (6p.)
a. P.x==0 b. P.y==0 c. P.x+P.y==0 d. P.x==P.y
b) Care sunt cei patru fii ai nodului ales ca rdcin n acest caz? (3p.)
4. O list liniar simplu nlnuit cu 99 de elemente, reine n p=prim;
cmpul nr al fiecrui element cte un numr natural, iar n while(p->urm!=NULL)
cmpul urm, adresa elementului urmtor din list sau NULL {q=p->urm;
dac nu exist un element urmtor. tiind c prim p->urm=q->urm;
delete q; | free(q);
pstreaz adresa primului element al listei i c p i q sunt
p=p->urm;}
dou variabile de acelai tip cu prim, cte elemente are
lista dup executarea secvenei alturate? (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.)
Programul va crea un fiier text TABLOU.TXT. Elementele tabloului se vor scrie, n ordine, pe
prima linie a fiierului, cu cte un spaiu ntre ele. (10p.)
4. a) Scriei definiia complet a subprogramului dcm, cu doi parametri, care:
- primete prin parametrii a i b dou valori naturale din intervalul [1,30000]
- returneaz o valoare natural reprezentnd cel mai mare numr care este att divizor al lui a
ct i divizor al lui b.
Exemplu: dac a=100 i b=120, subprogramul returneaz valoarea 20. (6p.)
b) Scriei un program C/C++ care citete de la tastatur dou numere naturale a i b,
numere din intervalul [1,30000] i determin, folosind apeluri utile ale subprogramului
dcm, cel mai mare numr care este divizor al fiecruia dintre numerele a i b i are
proprietatea c este un produs de dou sau mai multe numere prime distincte. Programul
afieaz pe ecran numrul cu proprietatea cerut, iar dac nu exist un astfel de numr,
afieaz mesajul nu exista.
Exemplu: dac a=60 i b=72, atunci se afieaz 6
iar dac a=100 i b=75, atunci se afieaz nu exista. (4p.)
Pentru itemul 1 scriei pe foaia de examen litera care corespunde rspunsului corect.
0 1 1 0 0
1. Care dintre nodurile grafului neorientat cu 5 noduri, numerotate 1 0 1 0 1
de la 1 la 5, dat prin matricea de adiacen alturat, are gradul 1 1 0 1 1
cel mai mare? (4p.) 0 0 1 0 1
0 1 1 1 0
a. 4 b. 3 c. 5 d. 2
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++)
este o matrice ptratic format din n linii i n coloane for(j=0; j<n; j++)
numerotate de la 0 la n-1. Care este suma elementelor a[i][j] = (i+j)%n;
de pe diagonala secundar din matricea a, n urma
executrii acestei secvene, dac n=8? (4p.)
a. 8 b. 64 c. 24 d. 56
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 b. 10
c. nu pot s apar valori egale ntr-un vector d. 9
cu legturi de tip tat
for(i=0; i<n; i++)
2. n secvena alturat, i, j i n sunt variabile ntregi, iar a 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. 64 c. 56 d. 8
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 b. 3 c. 4 d. 5
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. 1 c. 2 6 d. 1 2 6
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 b. 4 i 5 c. 1 i 2 d. 3 i 4
2. Ce se va afia n urma executrii secvenei de char a[10]="Examen";
program alturate, considernd c a este o for (i=0;i<=2;i++)
variabil de tip ir de caractere, iar i o strcpy(a+i,a+i+1);
variabil de tip ntreg? (4p.) cout<<a; | printf("%s",a);
a. xmn b. Eae c. men d. Examen
S-a notat cu x%y restul mpririi numrului natural x la dac x<0 atunci
numrul natural nenul y. x -x
a) Scriei ce se va afia pentru x=8. (6p.) p 1
pentru i1,x execut
b) Scriei toate numerele naturale, de cte o singur cifr, p (p*4)%10
care, citite pentru x, determin afiarea valorii 4. (6p.)
c) Scriei n pseudocod un algoritm echivalent cu cel dat scrie p
care s nu utilizeze nicio structur repetitiv. (4p.)
d) Scriei programul C/C++ corespunztor algoritmului
dat. (10p.)
Pentru fiecare dintre itemii 1 i 2 scriei pe foaia de examen litera care corespunde
rspunsului corect.
1. Considerm un graf orientat cu 7 noduri, numerotate de la 1 la 7, i arcele: (1,6), (2,1),
(3,1), (3,4), (3,5), (6,2), (7,3). Care este lungimea maxim a unui circuit
elementar care se poate obine n graf prin adugarea unui singur arc? (4p.)
a. 6 b. 4 c. 3 d. 5
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. cout<<x[strlen(x)-1];
| printf("%c",x[strlen(x)-3]); | printf("%c",x[strlen(x)-1]);
c. cout<<x[2]; d. cout<<x[strlen(x)];
| printf("%c",x[2]); | printf("%c",x[strlen(x)]);
Pentru fiecare dintre itemii 1 i 2 scriei pe foaia de examen litera care corespunde
rspunsului corect.
1. Care este numrul minim de muchii care trebuie eliminate dintr-un graf neorientat complet
cu 100 de noduri astfel nct graful parial obinut s fie eulerian? (4p.)
a. 4851 b. 0 c. 100 d. 50
2. Fiecare element al unei liste simplu nlnuite, alocat dinamic, memoreaz n cmpul urm
adresa urmtorului element din list sau NULL dac nu exist un element urmtor n list,
iar variabilele k1, k2 i k3 rein adresele a 3 elemente succesive n list, ca n figur. Cu ce
instruciune se pot nlocui punctele de suspensie din secvena de mai jos astfel nct
aceasta s determine interschimbarea corect a poziiilor n list a elementelor de la
adresele k2 i k3? (4p.)
k1->urm=k3; ... k3->urm=k2;
a. k2->urm=k3->urm; b. k2->urm=k3;
c. k2->urm=k1->urm; d. k2=k3->urm;