You are on page 1of 19

v01. Matrici - variante de bacalaureat 2008.

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

v02.
4. n secvena alturat, variabila a memoreaz o matrice s = 0;
cu n linii i n coloane (numerotate de la 0 la n-1) cu for(j = 0; j < n/2; j++)
elemente numere ntregi, iar toate celelalte variabile sunt {
ntregi. tiind c n este un numr natural par, nenul, .............
scriei instruciunile ce pot nlocui punctele de suspensie }
din secvena de program alturat astfel nct, n urma
executrii acesteia, s se afieze suma elementelor printf("%d",s);|cout<<s;
numere naturale impare de pe linia k a matricei a. (6p.)

v03. 5. Scriei un program C/C++ care citete de la tastatur un numr natural n (2n24) i
construiete n memorie o matrice cu n linii i n coloane ale crei elemente vor primi valori
dup cum urmeaz:
- elementele aflate pe diagonala principal a matricei vor primi valoarea 0
- elementele de pe prima coloan, cu excepia celui aflat pe diagonala principal vor primi
valoarea n
- elementele de pe a doua coloan, cu excepia celui aflat pe diagonala principal vor primi
valoarea n-1
...
- elementele de pe ultima coloan, cu excepia celui aflat pe diagonala principal vor primi
valoarea 1
Programul va afia matricea astfel construit pe ecran, cte o linie a matricei 0 3 2 1
pe cte o linie a ecranului, cu cte un spaiu ntre elementele fiecrei linii (ca n 4 0 2 1
exemplu). 4 3 0 1
Exemplu: pentru n=4 se va afia matricea alturat. (10p.) 4 3 2 0

v04. 5. Scriei un program C/C++ care citete de la tastatur un numr natural n (2n24) i
construiete n memorie o matrice cu n linii i n coloane ale crei elemente vor primi valori
dup cum urmeaz:
- elementele aflate pe diagonala secundar a matricei vor primi valoarea 0
- elementele de pe prima linie, cu excepia celui aflat pe diagonala secundar vor primi
valoarea n
- elementele de pe a doua linie, cu excepia celui aflat pe diagonala secundar vor primi
valoarea n-1
...
- elementele de pe ultima linie, cu excepia celui aflat pe diagonala secundar vor primi
valoarea 1
Programul va afia matricea astfel construit pe ecran, cte o linie a matricei 4 4 4 0
pe cte o linie a ecranului, cu cte un spaiu ntre elementele fiecrei linii (ca 3 3 0 3
n exemplu).
2 0 2 2
Exemplu: pentru n=4 se va afia matricea alturat. (10p.)
0 1 1 1
v05. 5. Scriei un program C/C++ care citete de la tastatur dou numere naturale n i m
(2m10, 2n10) i care construiete n memorie i apoi afieaz o matrice A cu n linii
(numerotate de la 1 la n) i m coloane (numerotate de la 1 la m) cu proprietatea c fiecare
element Aij memoreaz cea mai mare dintre valorile indicilor i i j (1in, 1jm).
Matricea se va afia pe ecran, cte o linie a matricei pe cte o linie a ecranului, elementele
fiecrei linii fiind separate prin cte un spaiu. (10p.)
Exemplu: pentru n=4 i m=5 se va afia matricea alturat. 1 2 3 4 5
2 2 3 4 5
3 3 3 4 5
4 4 4 4 5

1. Care dintre urmtoarele expresii reprezint un element al tabloului int a[5][6];


v06.
bidimensional a, declarat alturat? (4p.)
a. a[40] b. a[6][7] c. a[2][3] d. a[10*5]

1.
v07. 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];

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


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

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


mult patru cifre fiecare. Scriei programul C/C++ care citete de la tastatur numrul natural
v09. n (2n23) i cele n*n elemente ale tabloului i apoi afieaz pe ecran elementele primului
ptrat concentric, separate prin cte un spaiu. Ptratul este parcurs n sensul acelor de
ceasornic ncepnd din colul su stnga-sus, ca n exemplu. Primul ptrat concentric este
format din prima i ultima linie, prima i ultima coloan a tabloului.
Exemplu: pentru n=5 i tabloul alturat, se va 1 2 3 4 5
afia: 6 7 8 9 1
2 3 4 5 6
1 2 3 4 5 1 6 2 7 6 5 4 3 7 2 6 7 8 9 1 2
(10p.) 3 4 5 6 7
5. Scriei un program C/C++ care citete de la tastatur dou numere naturale n i p
v10. (2n20, 1p20) i construiete n memorie un tablou bidimensional cu n linii i p
coloane. Tabloul va fi construit astfel nct, parcurgnd matricea linie cu linie de sus n jos i
fiecare linie de la stnga la dreapta, s se obin irul primelor n*p ptrate perfecte pare,
ordonat strict cresctor, ca n exemplu. Tabloul astfel construit va fi afiat pe ecran, fiecare
linie a tabloului pe cte o linie a ecranului, cu cte un spaiu ntre elementele fiecrei linii.
Exemplu: pentru n=2, p=3 programul va afia tabloul alturat: 0 4 16
(10p.) 36 64 100
v11. 5. Scriei un program C/C++ care citete de la tastatur dou valori naturale nenule m i n
(m10, n10) i apoi m*n numere naturale nenule cu cel mult 4 cifre fiecare, reprezentnd
elementele unei matrice cu m linii i n coloane. Programul determin apoi valorile minime de
pe fiecare linie a matricei i afieaz pe ecran cea mai mare valoare dintre aceste minime.
3 6 5 4 7

Exemplu: pentru m=3, n=5 i matricea 9 6 12 9 10 , se afieaz pe ecran valoarea 6
5 13 7 2 3

(cea mai mic valoare de pe prima linie a matricei este 3, cea mai mic valoare de pe linia a
doua este 6, cea mai mic valoare de pe linia a treia este 2. Cea mai mare dintre aceste trei
valori este 6). (10p.)

v12. 5. Scriei un program C/C++ care citete de la tastatur un numr natural n (2<n<50) 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 linia i (1in), aflate deasupra diagonalei secundare au valoarea egal
cu i;
- elementele de pe coloana n-i+1 (1in), aflate sub diagonala secundar au valoarea
egal cu i.
Programul va afia matricea astfel construit pe ecran, cte o linie a 1 1 1 0
matricei pe o linie a ecranului, elementele fiecrei linii fiind separate 2 2 0 1
prin cte un spaiu. 3 0 2 1
Exemplu: pentru n=4 se va afia matricea alturat. (10p.) 0 3 2 1

v13. 5. Scriei un program C/C++ care citete de la tastatur un numr natural n (2<n<50) 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 1 2 3 0
pe cte o linie a ecranului, elementele fiecrei linii fiind separate prin cte 1 2 0 3
un spaiu. 1 0 2 2
Exemplu: pentru n=4 se va afia matricea alturat. (10p.) 0 1 1 1

v14. 5. Scriei un program C/C++ care citete de la tastatur un numr natural nenul, cu maximum
8 cifre, construiete n memorie i afieaz apoi pe ecran o matrice ptratic, avnd
numrul de linii i de coloane egal cu numrul de cifre ale numrului dat, completat cu
cifrele numrului citit.
Astfel, elementele de pe prima coloan a matricei vor fi toate egale cu
cifra unitilor numrului dat, elementele de pe a doua coloan a
matricei vor fi toate egale cu cifra zecilor numrului dat, i aa mai
departe, ca n exemplu.
Exemplu: dac se citete numrul 1359, matricea construit va fi cea
alturat. (10p.)
v15. 5. Scriei un program C/C++ care citete de la tastatur un numr natural cu exact 5 cifre i
construiete n memorie o matrice ptrat cu 6 linii i 6 coloane, numerotate de la 1 la 6,
format astfel:
- elementele aflate pe diagonala principal sunt toate nule;
- elementele de pe linia 1, aflate deasupra diagonalei principale precum i elementele de pe
coloana 1, aflate sub diagonala principal au toate valoarea egal cu cifra unitilor
numrului citit;
- elementele de pe linia 2, aflate deasupra diagonalei principale precum i elementele de pe
coloana 2, aflate sub diagonala principal au toate valoarea egal cu cifra zecilor numrului
citit, i aa mai departe, ca n exemplu.
Matricea astfel construit va fi afiat pe ecran, cte o linie a 0 1 1 1 1 1
matricei pe cte o linie a ecranului, elementele de pe aceeai 1 0 3 3 3 3
linie fiind separate prin cte un spaiu. 1 3 0 7 7 7
Exemplu: dac se citete numrul 28731 matricea construit va 1 3 7 0 8 8
fi cea scris alturat. (10p.) 1 3 7 8 0 2
1 3 7 8 2 0

v16. 5. Scriei un program C/C++ care citete de la tastatur un numr natural n (2<n<16),
construiete n memorie i afieaz pe ecran o matrice cu n linii i n coloane n care
elementele de pe cele dou diagonale sunt egale cu 0, elementele care se afl deasupra
ambelor diagonale sunt egale cu 1, elementele care se afl sub ambele diagonale sunt
egale cu 2, iar restul elementelor sunt egale cu 3.
Elementele matricei vor fi afiate pe ecran, cte o linie a matricei pe 0 1 1 1 0
cte o linie a ecranului cu cte un spaiu ntre elementele fiecrei linii. 3 0 1 0 3
Exemplu: pentru n=5 se va afia matricea alturat. (10p.) 3 3 0 3 3
3 0 2 0 3
0 2 2 2 0

v17. 5. Scriei un program C/C++ care citete de la tastatur un numr natural n (2<n<20),
construiete n memorie i afieaz pe ecran o matrice cu n linii i n coloane, n care
fiecare element de pe diagonala secundar are valoarea n, fiecare element aflat deasupra
diagonalei secundare este mai mic cu o unitate dect vecinul aflat pe aceeai linie n
dreapta lui i fiecare element aflat sub diagonala secundar este mai mare cu o unitate
dect vecinul aflat pe aceeai linie n stnga lui.
Elementele matricei vor fi afiate pe ecran, cte o linie a matricei pe 1 2 3 4 5
cte o linie a ecranului cu cte un spaiu ntre elementele fiecrei linii. 2 3 4 5 6
Exemplu: pentru n=5 se va afia matricea alturat. (10p.) 3 4 5 6 7
4 5 6 7 8
5 6 7 8 9

v18. 5. Scriei un program C/C++ care citete de la tastatur un numr natural n (2<n<20),
construiete n memorie i afieaz pe ecran o matrice cu n linii i n coloane, numerotate
de la 1 la n. Fiecare element din matrice aflat pe o linie impar va fi egal cu numrul liniei pe
care se afl i fiecare element aflat pe o linie par va fi egal cu numrul coloanei pe care se
afl.
Elementele matricei vor fi afiate pe ecran, cte o linie a matricei pe 1 1 1 1 1
cte o linie a ecranului cu cte un spaiu ntre elementele fiecrei linii. 1 2 3 4 5
Exemplu: pentru n=5 se va afia matricea alturat. (10p.) 3 3 3 3 3
1 2 3 4 5
5 5 5 5 5
v19. 5. Scriei un program C/C++ care citete de la tastatur un numr natural n (2<n<20),
construiete n memorie i afieaz pe ecran o matrice cu n linii i n coloane, numerotate
de la 1 la n, n care fiecare element aflat pe o linie impar este egal cu suma dintre indicii
liniei i coloanei pe care se afl i fiecare element aflat pe o linie par este egal cu cel mai
mic dintre elementele aflate pe linia anterioar i pe aceeai coloan cu el sau pe linia
anterioar i pe una dintre coloanele vecine cu cea pe care se afl el.
Elementele matricei vor fi afiate pe ecran, cte o linie a matricei pe 2 3 4 5 6
cte o linie a ecranului cu cte un spaiu ntre elementele fiecrei linii. 2 2 3 4 5
Exemplu: pentru n=5 se va afia matricea alturat. (10p.) 4 5 6 7 8
4 4 5 6 7
6 7 8 9 10

v20. 5. Scriei un program C/C++ care citete de la tastatur un numr natural n (2<n<20) i
construiete n memorie o matrice cu n linii i n coloane, numerotate de la 1 la n, n care
fiecare element aflat pe chenarul exterior al matricei este egal cu suma dintre linia i
coloana pe care se afl, iar fiecare dintre celelalte elemente este egal cu suma celor trei
vecini situai n matrice pe linia anterioar. Dou elemente din matrice se numesc vecine
dac se gsesc alturi pe linie, coloan sau diagonal. Chenarul exterior al unei matrice
este format din prima linie, ultima linie, prima coloan i ultima coloan.
Elementele matricei vor fi afiate pe ecran, cte o linie a 2 3 4 5 6
matricei pe cte o linie a ecranului cu cte un spaiu ntre 3 9 12 15 7
elementele fiecrei linii. 4 24 36 34 8
Exemplu: pentru n=5 se va obine matricea alturat. 5 64 94 78 9
(10p.) 6 7 8 9 10

v21. 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 p=1;
punctele de suspensie astfel nct secvena s for(i=1;i<=20;i++)
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];

v22. 5. Scriei un program C/C++ care citete de la tastatur numerele naturale m i n din intervalul
[1,100], apoi construiete n memorie i afieaz pe ecran un tablou bidimensional cu m
linii i n coloane astfel nct prin parcurgerea acestuia linie cu linie de sus n jos i fiecare
linie de la stnga la dreapta, se obin n ordine descresctoare toate numerele naturale de
la 1 la m*n, ca n exemplu.
Fiecare linie a tabloului este afiat pe cte o linie a ecranului, elementele 12 11 10
aceleiai linii fiind separate prin cte un spaiu. 9 8 7
Exemplu: pentru m=4 i n=3 se va construi i afia tabloul alturat. (10p.) 6 5 4
3 2 1
v23. 5. Un tablou bidimensional A cu m linii i n coloane (1m100, 1n100) conine pe prima
linie numerele 1,2,...,n, iar pe prima coloan numerele 1,2,...,m. Celelalte elemente
ale tabloului sunt date de relaia: Ai,j=Ai-1,j+Ai,j-1. Scriei un program C/C++ care citete
de la tastatur numerele m i n i afieaz pe ecran elementul de pe ultima linie i ultima
coloan a tabloului. (10p.)
Exemplu: pentru m=3 i n=4 se va afia 25 1 2 3 4
deoarece elementele tabloului A sunt: 2 4 7 11
3 7 14 25
v24. 4. Scriei o secven de instruciuni C/C++ care s iniializeze elementele unui tablou
bidimensional A, cu n linii i n coloane, n100, cu numerele naturale 1,2,...,n, astfel
nct pe fiecare linie sau coloan s existe toate numerele din mulimea {1,2,...,n}.
(6p.)

v25. 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 2 (10p.) 1 1 1 1
2 2 2 1
1 2 1 1
v26. 5. Scriei un program C/C++ care citete de la tastatur un numr natural
n (1<=n<=6) i elementele unui tablou bidimensional A cu n linii i n
coloane, care memoreaz numere naturale mai mici dect 100, i
afieaz pe ecran (dac exist), separate prin cte un spaiu,
elementele din matrice care au proprietatea c sunt egale cu produsul
celorlalte elemente aflate pe aceeai coloan.
Exemplu: pentru matricea din figura alturat se afieaz, nu neaprat n
aceast ordine, valorile 10 22.(10=1*5*2*1 ; 22=1*11*2*1) (10p.)

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


n (2<n<=10) i construiete n memorie o matrice A cu n linii i n
coloane n care toate elementele de pe prima linie, prima i ultima
coloan au valoarea 1 i oricare alt element Aij din matrice este egal cu
suma a 3 elemente situate pe linia i-1: primul aflat pe coloana j-1, al
doilea pe coloana j, iar al treilea pe coloana j+1, ca n exemplu.
Matricea va fi afiat pe ecran, linie cu linie, numerele de pe aceeai
linie fiind separate prin cte un spaiu.
Exemplu: pentru n=5 , se afieaz matricea alturat. (10p.)
v28. 3. ntr-un tablou bidimensional A, cu n linii i n coloane, notm cu Aij elementul aflat pe linia i i
coloana j (1in, 1jn). Care este valoarea expresiei j-i dac elementul Aij este situat
pe diagonala principal a tabloului A? (4p.)

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


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

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


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

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


v31. variabila a memoreaz o matrice n care prima linie i prima for(i=1;i<=4;i++)
coloan sunt numerotate cu 1. Toate elementele matricei primesc a[i][j]=2*i+j;
valori n urma executrii secvenei.
Scriei n ordine, ncepnd cu prima linie, doar elementele situate
pe cea de-a treia coloan a matricei. (6p.)

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


variabila A memoreaz o matrice n care prima linie i prima for(i=3;i>=1;i--)
coloan sunt numerotate cu 1. Toate elementele matricei a[i][j]=i+j
primesc valori n urma executrii secvenei.
Scriei n ordine, ncepnd cu prima coloan, doar elementele
situate pe a doua linie a matricei. (6p.)

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


v33. variabila a memoreaz o matrice n care prima linie i prima for(j=1;j<=5;j++)
for(i=1;i<=3;i++)
coloan sunt numerotate cu 1. Toate elementele matricei
{ a[j][i]=x;
primesc valori n urma executrii secvenei. x=x+1;
Scriei n ordine, ncepnd cu prima coloan, elementele }
situate pe fiecare linie a matricei care se va construi n urma
executrii secvenei alturate. (6p.)
5. Scriei programul C/C++ care citete de la tastatur un numr natural n (n20),
v34. construiete n memorie i afieaz pe ecran, matricea cu n linii i n coloane, n care se vor
memora n ordinea cresctoare a valorii, pe linii i coloane, primele n2 numere naturale
nenule, pare, care nu sunt divizibile cu 3.
Fiecare linie a matricei se va afia pe cte o linie a ecranului, cu 2 4 8 10
elementele de pe aceeai linie separate prin cte un spaiu. 14 16 20 22
Exemplu: pentru n=4 se va construi i afia matricea alturat. 26 28 32 34
(10p.) 38 40 44 46

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


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

v36.
5. Se consider o matrice cu n linii i m coloane (1n30, 1m30),
ce memoreaz numere ntregi de cel mult 4 cifre fiecare. Scriei un
program C/C++ care citete de la tastatur valorile n, m i
elementele matricei i care afieaz pe ecran, separate prin cte
un spaiu, valorile minime de pe fiecare coloan, n ordine de la
prima la ultima coloan.
Exemplu: pentru n=4, m=4 i matricea alturat se vor afia pe
ecran valorile 3 2 7 3. (10p.)

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


v38. memoreaz numere ntregi de cel mult 2 cifre fiecare. Scriei un
program C/C++ care citete de la tastatur valoarea n i elementele
matricei i care afieaz pe ecran, produsul acelor elemente de pe
diagonala secundar care au proprietatea c sunt valori minime pe
coloanele lor. Dac nu exist astfel de elemente n matrice, se va afia
mesajul NU EXISTA.
Exemplu: pentru n=4 i matricea alturat se va afia pe ecran
valoarea 21 (3*7=21). (10p.)

4. Considerm declaraiile: for(i=1;i<=3;i++)


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

5. Scriei un program C/C++ care citete de la tastatur un numr natural n 2 3 4 5


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

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


v42. si 5 coloane, numerotate de la 1 la 5, ale crui elemente for(j=1;j<=5;j++)
sunt numere ntregi. Care este cea mai mare valoare, a[i][j]=j%i+i%j;
memorat n tablou, deasupra diagonalei principale a
tabloului construit n urma executrii secvenei de program
alturate ? (6p.)

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

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

v45. 4. Variabila a memoreaz elementele unui tablou bidimensional for(i=1;i<=4;i++)


cu 4 linii i 5 coloane, numere ntregi. Care este cel mai mic for(j=1;j<=5;j++)
element situat pe a doua linie a tabloului construit n urma a[i][j]=i-j;
executrii secvenei de program alturate? (6p.)
v46. 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

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

5. Scriei un program C/C++ care citete de la tastatur un numr 2 4 6 8


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

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

4. Elementele tabloului bidimensional din figura alturat, cu 5 linii i 1 2 3 4 5


v50. 5 coloane, sunt toate numerele naturale cuprinse ntre 1 i 25 16 17 18 19 6
aezate n spiral, ncepnd cu primul element al primei linii i 15 24 25 20 7
continund n sens invers trigonometric ca n figura alturat. 14 23 22 21 8
Care este ultima cifr a produsului numerelor impare aflate sub 13 12 11 10 9
diagonala secundar (exclusiv diagonala secundar), n cazul
unui tablou bidimensional cu 4 linii i 4 coloane generat dup
aceeai regul? (6p.)

3. n secvena alturat, variabila a memoreaz elementele x=5;


v51.
unui tablou bidimensional cu 4 linii (numerotate de la 0 la for (i=0;i<=3;i++)
3) i 4 coloane (numerotate de la 0 la 3), iar toate for (j=0;j<=3;j++)
celelalte variabile sunt de tip ntreg. {a[i][j]=x;
Ce valoare va avea elementul a[1][3] dup executarea x=x+1;
}
secvenei de instruciuni scris alturat? (6p.)
3. n secvena alturat, variabila a memoreaz elementele x=5;
v52. unui tablou bidimensional cu 4 linii (numerotate de la 0 la for (i=0;i<=3;i++)
3) i 4 coloane (numerotate de la 0 la 3), iar toate for (j=0;j<=3;j++)
celelalte variabile sunt de tip ntreg. if(i==j)
Ce valoare va avea elementul a[3][3] dup executarea {a[i][j]=x;
x++;}
secvenei de instruciuni scris alturat? (6p.)
3. In secvena de mai jos, variabila a memoreaz elementele unui tablou bidimensional cu 5
v53. linii (numerotate de la 1 la 5) i 5 coloane (numerotate de la 1 la 5), iar celelalte variabile
sunt de tip ntreg.
Ce valoare se va afia n urma executrii secvenei dac se prelucreaz urmtoarea
matrice?
1 2 3 4 2
x=0;
6 7 8 9 4
for (i=1;i<=5;i++)
1 2 0 4 3
if(a[i][i]%2!=0)
7 2 1 4 5
x=x+a[i][6-i];
1 2 3 4 5
cout<<x; | printf(%d,x); (6p.)

5. Scriei un program C/C++ care citete de la tastatur un numr natural par, n (4n10), i
v54.
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

3. Considerm urmtoarele declarri: for (i=0;i<=8;i++)


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

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


v56. (2<n<25, 0<k<n) i construiete n memorie o matrice cu n linii i n coloane format
numai din valori 1,2,3 i 4 astfel nct: elementele aflate la intersecia primelor k linii cu
primele k coloane sunt egale cu 1, elementele aflate la intersecia primelor k linii cu ultimele
n-k coloane sunt egale cu 2, elementele aflate la intersecia ultimelor n-k linii cu primele k
coloane sunt egale cu 3, elementele aflate la intersecia ultimelor n-k linii cu ultimele n-k
coloane sunt egale cu 4 ca n exemplul de mai jos.
Programul afieaz pe ecran matricea construit, fiecare linie a 1 1 1 2 2
matricei pe o linie a ecranului i elementele de pe aceeai linie 1 1 1 2 2
separate prin cte un singur spaiu. 1 1 1 2 2
Exemplu: pentru n=5, k=3 se construiete n memorie i se afieaz 3 3 3 4 4
matricea alturat. (10p.) 3 3 3 4 4
5. Scriei un program C/C++ care citete de la tastatur trei numere naturale n, a i b
v57. (2<n<25, 0<a<n, 0<b<n) i construiete n memorie o matrice cu n linii i n coloane
numerotate de la 1 la n, format numai din valori 0,1,2,3 i 4 astfel nct: elementele
aflate pe linia a sau coloana b sunt egale cu 0, cele aflate deasupra liniei a i la stnga
coloanei b sunt egale cu 1, cele aflate deasupra liniei a i la dreapta coloanei b sunt egale
cu 2, cele aflate sub linia a i la stnga coloanei b sunt egale cu 3, iar elementele aflate
sub linia a i la dreapta coloanei b sunt egale cu 4 ca n exemplul de mai jos.
Programul afieaz pe ecran matricea construit, fiecare linie a 1 1 0 2 2
matricei pe o linie a ecranului i elementele de pe aceeai linie 1 1 0 2 2
separate prin cte un singur spaiu. 1 1 0 2 2
Exemplu: pentru n=5, a=4, b=3 se construiete n memorie i se 0 0 0 0 0
afieaz matricea alturat: (10p.) 3 3 0 4 4

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


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

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


v59. j sunt variabile ntregi cu valori cuprinse ntre 1 i 10. Scriei o expresie C/C++ care s fie
nenul dac i numai dac elementul a[i][j] se afl pe diagonala secundar a matricei.
(6p.)

v60. 4. Fie a o matrice cu 5 linii i 5 coloane numerotate de la 1 la 5. Pentru fiecare element


a[i][j] (1i5, 1j5) expresia a[i][j]==(i-1)*5+j este nenul. Care este
valoarea sumei elementelor de pe diagonala secundar a matricei? (6p.)

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


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

5. Scriei un program n limbajul C/C++ care citete de la tastatur dou valori naturale n i m
v63. (1n50, 1m50) i costruiete 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 6 11 16
Exemplu: pentru n=5 i m=4 se va afia: 2 7 12 17
3 8 13 18
4 9 14 19
5 10 15 20
(10p.)
v65. 5. Scriei un program n limbajul C/C++ care citete de la tastatur dou valori naturale n i m
(1n50, 1m50) 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
(10p.)
11 12 13 14 15
20 19 18 17 16

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


v68. (1m50, 1n50) i m* n numere naturale de cel mult 5 cifre ce reprezint elementele
unui tablou bidimensional, i afieaz pe ecran produsul 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. (10p.)
Exemplu: pentru m=4, n=4 i matricea alturat se va afia 355 11 -21 31 41
(355=5*71). 5 -61 71 -81
91 11 21 31
-11 31 -41 0

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
v69.
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. 1 2 3 (10p.)
Exemplu: pentru n=3 i matricea alturat se va afia mesajul: 0 5 6
Este triunghiular superior 0 0 9

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


v70. (1m100, 1n100), un numr 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 afieaz pe ecran elementele tabloului
dup tergerea din memorie a liniei x, fr a folosi un tablou bidimensional suplimentar.
Afiarea matricei obinut dup eliminare, se va face pe m-1 linii, elementele fiecrei linii
fiind desprite prin cte un spaiu. (10p.)
Exemplu: pentru m=3, n=4, x=2 i 11 21 31 41 se va afia matricea
matricea alturat 51 61 71 81 11 21 31 41
91 11 21 31 91 11 21 31

3. Variabila i este de tip ntreg, iar variabila a memoreaz o s1 = 0; s2 = 0;


matrice cu n linii i n coloane, numerotate de la 0 la n-1, ale for(i=0; i<n; i++)
v71. crei elemente sunt numere ntregi. { ... }
nlocuii cu exact dou instruciuni de atribuire punctele de suspensie din secvena de
program alturat, astfel nct n urma executrii ei, variabila ntreag s1 s memoreze
suma elementelor de pe diagonala principal din matricea a, iar variabila ntreag s2 suma
elementelor de pe diagonala secundar din matricea a. (6p.)
5. Scriei programul C/C++ care citete de la tastatur o valoare natural n (2n100),
v72. construiete n memorie i apoi afieaz pe ecran o matrice a, cu n linii i n coloane,
simetric fa de diagonala secundar. Elemente matricei situate deasupra diagonalei
n(n + 1)
secundare, inclusiv diagonala secundar, sunt toate numerele naturale de la 1 la .
2
Elementele fiecrei linii, de la stnga la dreapta i ale fiecrei coloane, de 1 3 6 10
sus n jos, situate deasupra diagonalei secundare, inclusiv cele de pe 2 5 9 6
diagonala secundar, sunt n ordine strict cresctoare, ca n exemplu.
4 8 5 3
Matricea se va afia pe ecran, cte o linie a matricei pe o linie a ecranului,
elementele fiecrei linii fiind separate ntre ele prin cte un spaiu. 7 4 2 1
Exemplu: pentru n = 4 se va afia matricea alturat. (10p.)

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


v73. cu n linii i n coloane numerotate de la 0 la n-1 (0<n<50), cu elemente numere reale.
Cu ce instruciuni se poate nlocui zona punctat din for(i = 0; i < n; i++)
secvena alturat, astfel nct, n urma executrii {........}
acesteia, s se interschimbe elementele liniei q cu
elementele liniei p ale tabloului a (0qn-1, 0pn-1).
Dac sunt necesare i alte variabile, scriei declarrile
acestora. (6p.)

5. Se consider irul lui Fibonacci, definit astfel: f0 = 0, f1 = 1, fn = fn-1 + fn-2, dac n>1.
v74. Scriei un program C/C++ care citete de la tastatur o valoare natural n (2n50),
construiete n memorie i afieaz pe ecran o matrice a cu n linii i n coloane ale crei
elemente sunt numere naturale, fiecare reprezentnd ultima cifr a cte unui termen al
irului lui Fibonacci, ncepnd de la termenul de indice 1 i pn la termenul de indice n2, n
ordine, linie cu linie de sus n jos, i n cadrul fiecrei linii de la stnga la dreapta, ca n
exemplu.
Matricea se va afia pe ecran, cte o linie a matricei pe cte o linie a 1 1 2 3
ecranului, elementele de pe aceeai linie fiind separate ntre ele prin 5 8 3 1
cte un spaiu. 4 5 9 4
Exemplu: pentru n = 4 se va obine matricea alturat. (10p.) 3 7 0 7

5. ntr-o matrice a, cu n linii i n coloane, numerotate de la 1 la n, numim semidiagonal de


v75. indice k mulimea format din elementele ai,j pentru care i+j = k+1.
Scriei programul C/C++ care citete de la tastatur o valoare natural n (2n100),
construiete n memorie i apoi afieaz pe ecran o matrice a cu n linii i n coloane,
numerotate de la 1 la n, n care elementele fiecrei semidiagonale de indice k sunt egale cu
(k+1)2, ca n exemplu.
Matricea se va afia pe ecran, cte o linie a matricei pe o linie a 4 9 16 25
ecranului, elementele unei linii fiind separate ntre ele prin cte un 9 16 25 36
spaiu. 16 25 36 49
Exemplu: pentru n = 4 se va obine matricea alturat. (10p.) 25 36 49 64
v76. 1.
Variabila t memoreaz o matrice cu 5 linii i 5 coloane, x=0;
numerotate de la 0 la 4, cu elemente numere ntregi, iar for(i=0;i<5;i++)
celelalte variabile sunt ntregi. Secvena de program for(j=i+1;j<5;j++)
alturat determin memorarea n variabila x a sumei x=x+t[i][j];
elementelor situate: (4p.)
a. deasupra diagonalei principale, b. strict deasupra diagonalei principale
inclusiv diagonala principal
c. strict sub diagonala principal d. strict deasupra diagonalei secundare

1. Pentru o matrice t cu 8 linii i 8 coloane, numerotate de z=0;


v77. 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 memorarea n z a sumei tuturor z=z+t[i][j];
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

1. Pentru o matrice t cu 8 linii i 8 coloane, z=0;


v78. 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];
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

1. Pentru o matrice t cu 8 linii i 8 coloane, z=0;


v79. numerotate de la 0 la 7, cu elemente numere for(i=0;i<8;i++)
ntregi, secvena de program alturat, n care for(j=7-i;j<8;j++)
variabilele z, i, i j sunt de tip ntreg, determin z=z+t[i][j];
memorarea n z a sumei tuturor elementelor
situate: (4p.)
a. sub diagonala secundar, inclusiv b. deasupra diagonalei principale, inclusiv
diagonala secundar diagonala principal
c. strict sub diagonala principal d. strict deasupra diagonalei secundare

1. Pentru o matrice t cu 8 linii i 8 coloane, numerotate z=0;


v80. de 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 for(j=8-i;j<8;j++)
tip ntreg determin memorarea n z a sumei tuturor z=z+t[i][j];
elementelor situate: (4p.)
a. deasupra diagonalei secundare b. deasupra diagonalei principale, inclusiv
diagonala principal
c. deasupra diagonalei secundare, inclusiv d. strict sub diagonala secundar
diagonala secundar
5. Scriei un program C/C++ care citete de la tastatur trei valori naturale nenule k, n, m
v81. (n10, m10, k32000) i apoi n*m numere ntregi, fiecare avnd cel mult 4 cifre,
reprezentnd elementele unui tablou bidimensional cu liniile numerotate de la 1 la n i
coloanele numerotate de la 1 la m.
Programul determin i afieaz pe ecran suma numerelor de ordine 2 4 5 -8
ale coloanelor care conin cel puin o dat valoarea k. Problema are 1 3 7 9
ntotdeauna soluie. 4 -2 3 10
Exemplu:pentru k=3,n=5,m=4 i matricea alturat se va afia 5, 5 4 2 37
deoarece coloanele 2 i 3 conin numrul k=3. (10p.) 6 7 3 13

5. Scriei un program C/C++ care citete de la tastatur trei valori naturale nenule k, n, m
v82. (n10, m10, k32000) i apoi n*m numere ntregi, fiecare avnd cel mult 4 cifre,
reprezentnd elementele unui tablou bidimensional cu liniile numerotate de la 1 la n i
coloanele numerotate de la 1 la m.
Programul determin i afieaz pe ecran produsul numerelor de 2 4 5 -8
ordine ale coloanelor care conin cel puin o dat valoarea k. 5 3 7 9
Problema are ntotdeauna soluie. 6 -2 3 10
Exemplu: pentru k=3, n=5, m=4 i matricea alturat se va afia 7 4 2 37
6, deoarece coloanele 2 i 3 conin numrul k=3. (10p.) 8 7 3 13

v83.
4. Se consider variabilele ntregi m, n i k (1n10, 1m10 i 1kn) i variabila a care
memoreaz un tablou bidimensional cu n linii, numerotate de la 1 la n, i m coloane,
numerotate de la 1 la m, avnd n*m numere ntregi. Scriei secvena de program C/C++ care
s determine i s afieze pe ecran elementele impare de pe linia k ale tabloului a. (6p.)

4. Variabila a memoreaz un tablou bidimensional, cu 4 linii i 4 coloane, numerotate de la 1


v84.
la 4, ce memoreaz numere naturale de cel mult 2 cifre fiecare. Scriei secvena de program
C/C++ care afieaz pe ecran produsul numerelor de pe diagonala secundar a tabloului. (6p.)

4. Variabila a memoreaz un tablou bidimensional, cu 4 linii i 4 coloane, numerotate de la 1


v85. la 4, cu elemente numere naturale de cel mult 2 cifre fiecare. Scriei secvena de program
C/C++ care afieaz pe ecran produsul numerelor de pe diagonala principal a tabloului. (6p.)

5. Scriei un program C/C++ care citete de la tastatur un numr natural n (1n10) apoi
construiete n memorie o matrice cu 2*n linii i 2*n coloane, numerotate de la 1 la 2*n,
v86. 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
5. Scriei un program C/C++ care citete de la tastatur un numr natural n (1n20),
elementele unei matrice cu n linii i n coloane, numere ntregi din intervalul [-100,100] i
v87. afieaz pe ecran media aritmetic a elementelor strict pozitive ale matricei, care sunt
situate sub diagonala principal, ca n exemplu.
Exemplu: pentru n=4 i matricea alturat se afieaz valoarea 2.5 -1 2 4 5
(sunt luate n considerare doar elementele marcate). (10p.) 0 6 3 1
2 4 2 0
3 -5 1 -3

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


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

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

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


elementele unei matrice cu n linii i n coloane, numere ntregi din intervalul [-100, 100] i
v90. afieaz pe ecran diferena m1-m2, unde m1 este media aritmetic a elementelor strict
pozitive ale matricei, situate deasupra diagonalei principale, iar m2 este media aritmetic a
elementelor strict pozitive ale matricei, situate sub diagonala principal, ca n exemplu. Cele
dou medii se consider egale cu 0 dac nu exist valori strict pozitive n zonele
corespunztoare.
Exemplu: pentru n=4 i matricea alturat se afieaz valoarea 0.25 -1 2 -4 5
(m1=2.75, calculat din elementele aflate deasupra diagonalei 0 6 3 1
principale, marcate cu chenar, i m2=2.5, calculat din elementele
2 4 2 0
subliniate). (10p.)
3 -5 1 -3
3. Se consider definit matricea A care are 10 linii, numerotate
v91. de la 1 la 10, i 8 coloane, numerotate de la 1 la 8, ale crei for(j=1;j<=10;j++)
elemente sunt numere ntregi. A[j][8]=0;
Rescriei secvena alturat astfel nct toate elementele de pe
cea de-a treia coloan a matricei s fie iniializate cu valoarea
100. (6p.)

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


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

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++)
v95. a[i][j] = (i+j)%n;
numerotate de la 0 la n-1. Care este suma elementelor
de pe diagonala secundar din matricea a, n urma
executrii acestei secvene, dac n=8? (4p.)
a. 8 b. 64 c. 24 d. 56

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


v96. 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 principal din matricea a, n urma
executrii acestei secvene, dac n=8? (4p.)
a. 24 b. 64 c. 56 d. 8

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


memoreaz numere ntregi cu cel mult dou cifre fiecare. Scriei un program n limbajul
v97.
C/C++ care citete de la tastatur valorile n, m i elementele tabloului, i care inverseaz
ordinea elementelor n cadrul fiecrei coloane, ca n exemplu. Programul va afia pe ecran,
pe n linii, matricea obinut dup inversare, elementele fiecrei linii fiind separate prin cte
un spaiu. (10p.)
Exemplu: pentru n=4, m=3 i matricea: Pe ecran se va afia:
1 7 3 3 4 5
4 5 6 7 8 9
7 8 9 4 5 6
3 4 5 1 7 3
5. Scriei un program C/C++ care citete de la tastatur un numr natural nenul n (n50) i
v98. construiete n memorie o matrice cu n linii i n coloane care s conin primele n2 numere
naturale pare. Prima linie a matricei va conine, n ordine cresctoare, valorile 0, 2,.., 2n-2;
a doua linie va conine, n ordine, valorile 2n, 2n+2,.., 4n-2; a treia linie va conine, n
ordine, valorile 4n, 4n+2,.., 6n-2, iar ultima linie va conine, n ordine, valorile 2n2-2n,
2n2-2n+2,.., 2n2-2.
Programul afieaz pe ecran matricea construit, cte o linie a matricei 0 2 4
pe cte o linie a ecranului, elementele de pe aceeai linie fiind desprite 6 8 10
prin cte un spaiu. 12 14 16
Exemplu: pentru n=3 se va afia matricea alturat. (10p.)

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

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