Sunteți pe pagina 1din 37

1.

Scriei un program C/C++ care citete de la tastatur dou valori naturale nanule 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. Exemplu: pentru m=3, n=5 i matricea 5 13 7 2 3 9 6 12 9 10 3 6 5 4 7 , se afieaz pe ecran valoarea 6 (cea mai mic valoare de pe prima linie a matricei este 2, cea mai mic valoare de pe linia a doua este 6, cea mai mic valoare de pe linia a treia este 3. Cea mai mare dintre aceste trei valori este 6). 2. Scrieti un program C/C++ care citeste de la tastatura doua numere naturale nenule n si m (2=m=10, 2=n=10) si care construieste n memorie si apoi afiseaza o matrice A cu n linii (numerotate de la 1 la n) si m coloane (numerotate de la 1 la m) cu proprietatea ca fiecare element Aij memoreaza cea mai mica dintre valorile indicilor i si j (1=i=n, 1=j=m). Matricea se va afisa pe ecran, cte o linie a matricei pe

cte o linie a ecranului, elementele fiecarei linii fiind separate prin cte un spatiu. Exemplu: pentru n=4 si m=5 se va afisa matricea alaturata. (10p.) 11111 12222 12333 12344 3. Scrieti un program C/C++ care citeste de la tastatura un numr natural n (2=n=24) si construieste n memorie o matrice cu n linii si n coloane ale crei elemente vor primi valori dup cum urmeaz: - elementele aflate pe diagonala principala a matricei vor primi valoarea 0 - elementele de pe prima coloana, cu excepia celui aflat pe diagonala principala vor primi valoarea n - elementele de pe a doua coloana, cu excepia celui aflat pe diagonala principala vor primi valoarea n-1 ... - elementele de pe ultima coloana, cu excepia celui aflat pe diagonala principala vor primi valoarea 1 Programul va afisa matricea astfel construita pe ecran, cte o linie a matricei pe cte o linie a ecranului, cu cte un spatiu ntre elementele fiecarei linii (ca n exemplu).

Exemplu: pentru n=4 se va afisa matricea alaturata. (10p.) 0321 4021 4301 4320 4. Scrieti un program C/C++ care citeste de la tastatura doua numere naturale n si m (2=m=10, 2=n=10) si care construieste n memorie si apoi afiseaza o matrice A cu n linii (numerotate de la 1 la n) si m coloane (numerotate de la 1 la m) cu proprietatea ca fiecare element Aij memoreaza cea mai mare dintre valorile indicilor i si j (1=i=n, 1=j=m). Matricea se va afisa pe ecran, cte o linie a matricei pe cte o linie a ecranului, elementele fiecarei linii fiind separate prin cte un spatiu. Exemplu: pentru n=4 si m=5 se va afisa matricea alaturata. 12345 22345 33345 44445 5. Se considera tabloul bidimensional cu n linii si n coloane ce conine numere naturale cu cel mult patru cifre fiecare. Scrieti programul C/C++ care citeste de la tastatura numrul natural n (2=n=23) si cele n*n elemente

ale tabloului si apoi afiseaza pe ecran elementele primului ptrat concentric, separate prin cte un spatiu. Ptratul este parcurs n sensul acelor de ceasornic ncepnd din coltul sau stnga-sus, ca n exemplu. Primul ptrat concentric este format din prima si ultima linie, prima si ultima coloana a tabloului. Exemplu: pentru n=5 si tabloul alturat, 12345 67891 23456 78912 34567 se va afisa: 1234516276543726 6. 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 matricei pe o linie a ecranului, elementele fiecrei linii fiind separate prin cte un spaiu. Exemplu: pentru n=4 se va afia matricea alturat.

1 2 3 0

1 2 0 3

1 0 2 2

0 1 1 1

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

8. 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 pe cte o linie a ecranului, elementele fiecrei linii fiind separate prin cte

un spaiu. Exemplu: pentru n=4 se va afia matricea alturat. 1 2 3 0 1 2 0 3 1 0 2 2 0 1 1 1 9. 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 matricei pe cte o linie a ecranului, elementele de pe

aceeai linie fiind separate prin cte un spaiu. Exemplu: dac se citete numrul 28731 matricea construit va fi cea scris alturat. 0 1 1 1 1 1 1 0 3 3 3 3 1 3 0 7 7 7 1 3 7 0 8 8 1 3 7 8 0 2 1 3 7 8 2 0 10. 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 cte o linie a ecranului cu cte un spaiu ntre elementele fiecrei linii. Exemplu: pentru n=5 se va afia matricea alturat.

0 3 3 3 0

1 0 3 0 2

1 1 0 2 2

1 0 3 0 2

0 3 3 3 0

11. 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 cte o linie a ecranului cu cte un spaiu ntre elementele fiecrei linii. Exemplu: pentru n=5 se va afia matricea alturat. 1 2 3 4 5 2 3 4 5 6 3 4 5 6 7 4 5 6 7 8 5 6 7 8 9

12. 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 cte o linie a ecranului cu cte un spaiu ntre elementele fiecrei linii. Exemplu: pentru n=5 se va afia matricea alturat. 1 1 1 1 1 1 2 3 4 5 3 3 3 3 3 1 2 3 4 5 5 5 5 5 5 13. 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 cte o linie a ecranului cu cte un spaiu ntre elementele fiecrei linii. Exemplu: pentru n=5 se va afia matricea alturat. 2 3 4 5 6 2 2 3 4 5 4 5 6 7 8 4 4 5 6 7 6 7 8 9 10

14. 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 matricei pe cte o linie a ecranului cu cte un spaiu ntre elementele fiecrei linii. Exemplu: pentru n=5 se va obine matricea alturat. (10p.) 2 3 4 5 6 3 9 12 15 7 4 24 36 34 8 5 64 94 78 9 6 7 8 9 10 15. 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 aceleiai linii fiind separate prin cte un spaiu. Exemplu: pentru m=4 i n=3 se va construi i afia tabloul alturat. 12 11 10 9 8 7 6 5 4 3 2 1 16. Se consider un tablou bidimensional cu m linii i n coloane (1<=m<=100, 1<=n<=100), 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: 1 2 2 1 1 0 1 1 1 1 2 2 2 1

1 2 1 1 17. Scriei programul C/C++ care citete de la tastatur un numr natural n (n?20), 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 elementele de pe aceeai linie separate prin cte un spaiu. Exemplu: pentru n=4 se va construi i afia matricea alturat. 2 4 8 14 16 26 28 38 40 10 20 22 32 34 44 46

18. Scriei programul C/C++ care citete de la tastatur un numr natural n (n?50) i construiete n memorie o matrice cu n linii i n coloane, ale crei elemente sunt numere ntregi citite de la tastatur. Pentru fiecare coloan a matricei, n ordine, programul afieaz pe ecran cel mai mic numr de pe respectiva coloan.

Numerele afiate vor fi separate prin cte un spaiu. Exemplu: pentru n=4 i matricea alturat, se vor afia pe ecran valorile: 5 -10 4 1. 122 103 5 10 -7 18 -10 2 107 999 59 4 1 200 100 7 19. Se consider o matrice cu n linii i m coloane (1?n?30, 1?m?30), 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.

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

21. Variabila a memoreaz un tablou bidimensional cu 5 linii si 5 coloane, numerotate de la 1 la 5, ale crui elemente sunt numere ntregi. Care este cea mai mare valoare, memorat n tablou, deasupra diagonalei principale a tabloului construit n urma executrii secvenei de program alturate ? for(i=1;i<=5;i++)

for(j=1;j<=5;j++) a[i][j]=j%i+i%j;

22. 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 ecranului, cu cte un spaiu ntre elementele fiecrei linii. Exemplu: dac n este 4 atunci programul va construi i va afia matricea alturat. 2 1 1 1 3 2 1 1 3 3 2 1 3 3 3 2 23. 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

24. Scriei un program C/C++ care citete de la tastatur un numr natural n (2<n<10) i care construiete n memorie i afieaz pe ecran un tablou bidimensional cu n linii i n coloane astfel nct, parcurgndu-l linie cu linie de sus n jos i fiecare linie de la stnga la dreapta, se obin primele n2 numere pare nenule, n ordine strict cresctoare, ca n exemplu. Exemplu: pentru n=4, se construiete i se afieaz tabloul

alturat. 2 4 6 8 10 12 14 16 18 20 22 24 26 28 30 32 25. n secvena alturat, variabila a memoreaz elementele unui tablou bidimensional cu 4 linii (numerotate de la 0 la 3) i 4 coloane (numerotate de la 0 la 3), iar toate celelalte variabile sunt de tip ntreg. Ce valoare va avea elementul a[3][3] dup executarea secvenei de instruciuni scris alturat? x=5; for (i=0;i<=3;i++) for (j=0;j<=3;j++) if(i==j) {a[i][j]=x; x++;} 26. Se consider o matrice ptratic cu n linii i n coloane (1?n?30), ce 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).

27. 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 linie a ecranului, elementele fiecrei linii fiind separate prin cte un spaiu. Exemplu: dac se citesc de la tastatur n=4 i x=123 atunci se afieaz tabloul alturat. 1 2 2 3 2 1 3 2 2 3 1 2

3 2 2 1 28. Scriei un program C/C++ care citete de la tastatur dou numere naturale n i k (2<n<25, 0<k<n) i construiete n memorie o matrice cu n linii i n coloane format numai din valori 1,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 matricei pe o linie a ecranului i elementele de pe aceeai linie separate prin cte un singur spaiu. Exemplu: pentru n=5, k=3 se construiete n memorie i se afieaz matricea alturat. 1 1 1 2 2 1 1 1 2 2 1 1 1 2 2 3 3 3 4 4 3 3 3 4 4 29. Variabila a memoreaz o matrice cu 10 linii i

10 coloane, numerotate de la 1 la 10, iar i i j sunt variabile ntregi cu valori cuprinse ntre 1 i 10. Scriei o expresie C/C++ care s fie nenul dac i numai dac elementul a[i][j] nu se afl pe diagonala principal a matricei. 30. 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? 31. Scriei un program C/C++ care citete de la tastatur un numr natural n (2<n15) i construiete n memorie o matrice ptrat cu n linii i n coloane n care ultima linie conine, n ordine, numerele 1,2,3,..,n, elementele situate deasupra diagonalei principale sunt nule 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 9 18 0 0

3 6 9 0 1 2 3 4 32. Scriei un program n limbajul C/C++ care citete de la tastatur dou valori naturale n i m (1?n?50, 1?m?50) 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. Exemplu: pentru n=5 i m=4 se va afia: 5 10 15 20 4 9 14 19 3 8 13 18 2 7 12 17 1 6 11 16 33. Scriei un program n limbajul C/C++ care citete de la tastatur dou valori naturale n i m (1?n?50, 1?m?50) i construiete n memorie un tablou bidimensional cu n linii i m coloane format din toate numerele naturale de la 1 la n*m, ca n exemplu. Programul va afia pe ecran, pe n linii, tabloul obinut, elementele fiecrei linii fiind separate prin cte un spaiu.

Exemplu: pentru n=4 i m=5 se va afia: 20 19 18 17 16 11 12 13 14 15 10 9 8 7 6 12345 34. 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 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. Exemplu: pentru m=4, n=4 i matricea alturat se va afia 355 (355=5*71). 11 -21 31 41 5 -61 71 -81 91 11 21 31 -11 31 -41 0 35. 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. Exemplu: pentru n=3 i matricea alturat se va afia mesajul: Este triunghiular superior 1 2 3 0 5 6 0 0 9

36. Scriei programul C/C++ care citete de la tastatur dou numere naturale m i n(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 liminare, se va face pe m-1 linii, elementele fiecrei linii fiind desprite prin cte un spaiu.

Exemplu: pentru m=3, n=4, x=2 i matricea alturat 11 21 31 41 51 61 71 81 91 11 21 31 se va afia matricea 11 21 31 41 91 11 21 31 37. 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, simetric fa de diagonala secundar. Elemente matricei situate deasupra diagonalei secundare, inclusiv diagonala secundar, sunt toate numerele naturale de la 1 la n(n + 1)/ 2 Elementele fiecrei linii, de la stnga la dreapta i ale fiecrei coloane, de sus n jos, situate deasupra diagonalei secundare, inclusiv cele de pe diagonala secundar, sunt n ordine strict cresctoare, ca n exemplu. 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. Exemplu: pentru n = 4 se va afia matricea alturat. 1 3 6 10 2 5 9 6 4 8 5 3

7 4 2 1 38. Se consider irul lui Fibonacci, definit astfel: f0 = 0, f1 = 1, fn = fn-1 + fn-2, dac n>1. 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 ecranului, elementele de pe aceeai linie fiind separate ntre ele prin cte un spaiu. Exemplu: pentru n = 4 se va obine matricea alturat. 1 1 2 3 5 8 3 1 4 5 9 4 3 7 0 7 39. Scriei un program C/C++ care citete de la tastatur trei valori naturale nenule k, n, m (n?10, m?10, k?32000) 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 ale coloanelor care conin cel puin o dat valoarea k. Problema are ntotdeauna soluie. Exemplu:pentru k=3,n=5,m=4 i matricea alturat se va afia 5, deoarece coloanele 2 i 3 conin numrul k=3. 2 4 5 -8 1 3 7 9 4 -2 3 10 5 4 2 37 6 7 3 13 40. Se consider variabilele ntregi m, n i k (1?n? 10, 1?m?10 i 1?k?n) 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. 41. Variabila a memoreaz un tablou bidimensional, cu 4 linii i 4 coloane, numerotate de la 1 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. 42. Variabila a memoreaz un tablou bidimensional, cu 4 linii i 4 coloane, numerotate de la 1 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. 43. Scriei un program C/C++ care citete de la tastatur un numr natural n (1?n?10) 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* n*n], 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*n*n], ca n exemplu. Programul afieaz pe ecran matricea obinut, cte o linie a matricei pe cte o linie a ecranului, elementele fiecrei linii fiind separate prin

cte un spaiu. Exemplu: pentru n=2 se obine matricea alturat. 1 3 5 7 8 6 4 2 9 11 13 15 16 14 12 10 44. Scriei un program C/C++ care citete de la tastatur un numr natural n (1?n?20), 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 sub diagonala principal, ca n exemplu. Exemplu: pentru n=4 i matricea alturat se afieaz valoarea 2.5 (sunt luate n considerare doar elementele marcate). -1 2 4 5 0 6 3 1 2 4 2 0 3 -5 1 -3 45. Scriei un program C/C++ care citete de la tastatur un numr natural n (1?n?20), 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 2.75 (sunt luate n considerare doar elementele marcate). -1 2 -4 5 0 6 3 1 2 4 2 0 3 -5 1 -3 46. Scriei un program C/C++ care citete de la tastatur un numr natural n (1?n?6) 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 matricei pe cte o linie a ecranului, elementele fiecrei linii fiind separate prin cte un spaiu. Exemplu: pentru n=4 se obine matricea alturat. 0 1 1 2 13 8 5 3 21 34 55 89 610 377 233 144 47. Scriei un program C/C++ care citete de la tastatur un numr natural n (1?n?20), elementele unei matrice cu n linii i n coloane, numere ntregi din intervalul [-100, 100] i afieaz pe ecran diferena m1-m2, unde m1 este media aritmetic a elementelor strict pozitive ale matricei, situate deasupra diagonalei principale, iar m2 este media aritmetic a elementelor strict pozitive ale matricei, situate sub diagonala principal, ca n exemplu. Cele dou medii se consider egale cu 0 dac nu exist valori strict pozitive n zonele corespunztoare. Exemplu: pentru n=4 i matricea alturat se afieaz valoarea 0.25

(m1=2.75, calculat din elementele aflate deasupra diagonalei principale, marcate cu chenar, i m2=2.5, calculat din elementele subliniate). -1 2 -4 5 0 6 3 1 2 4 2 0 3 -5 1 -3 48. Se consider definit matricea A care are 10 linii, numerotate de la 1 la 10, i 8 coloane, numerotate de la 1 la 8, ale crei elemente sunt numere ntregi. Rescriei secvena alturat astfel nct toate elementele de pe cea de-a treia coloan a matricei s fie iniializate cu valoarea 100. for(j=1;j<=10;j++) A[j][8]=0; 49. Scriei un program C/C++ care citete de la tastatur numerele ntregi m i n (1?m?50, 1?n?50) 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. Exemplu: pentru m=3 i n=4 i tabloul de mai jos 2 7 1 4 14 6 12 3 9 22 8 5 Pe ecran se va afia: 14 6 3 9 22 5 50. n secvena alturat, i, j i n sunt variabile ntregi, iar a este o matrice ptratic format din n linii i n coloane, 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? for(i=0; i<n; i++) for(j=0; j<n; j++) a[i][j] = (i+j)%n; a. 24 b. 64 c. 56 d. 8

51. Se consider un tablou bidimensional cu n linii

i m coloane (1?n?50, 1?m?50) ce memoreaz numere ntregi cu cel mult dou cifre fiecare. Scriei un program n limbajul C/C++ care citete de la tastatur valorile n, m i elementele tabloului, i care inverseaz ordinea elementelor n cadrul fiecrei coloane, ca n exemplu. Programul va afia pe ecran, pe n linii, matricea obinut dup inversare, elementele fiecrei linii fiind separate prin cte un spaiu. Exemplu: pentru n=4, m=3 i matricea: 1 7 3 4 5 6 7 8 9 3 4 5 Pe ecran se va afia: 3 4 5 7 8 9 4 5 6 1 7 3 52. Scriei un program C/C++ care citete de la tastatur un numr natural nenul n (n50) i construiete n memorie un tablou bidimensional cu n linii i n coloane care s conin primele n numere naturale nenule. Prima linie a tabloului va conine, n aceast ordine, valorile 1,2,...,n; a doua linie va conine, n ordine, valorile 2,2,3,...,n; a treia linie va conine, n ordine,

valorile 3,3,3,4,...,n, iar ultima linie va conine valorile n,n,..., n. Programul afieaz pe ecran matricea construit, cte o linie a matricei pe cte o linie a ecranului, elementele fiecrei linii fiind desprite prin cte un spaiu. Exemplu: pentru n=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 5 5 5 5 5

53. Scriei un program C/C++ care citete de la tastatur un numr natural n (1n100)i apoi elementele unui tablou bidimensional cu n linii i n coloane, care memoreaz numere naturale cu cel mult 9 cifre fiecare; programul afieaz pe ecran acele valori din tablou care sunt strict mai mici dect toate elementele cu care se nvecineaz direct (aflate pe aceeai linie dar pe o coloan alturat sau pe aceeai coloan dar pe o linie alturat), ca n exemplu. Numerele afiate vor fi separate prin cte un spaiu.

Exemplu: pentru n=4 i tabloul alturat se afieaz numerele: 2 0 (2 se nvecineaz direct cu 4, 3, 6 i 9, i este mai mic dect acestea, iar 0 se nvecineaz direct cu 6, 9 i 1 i este mai mic dect acestea). 5 6 0 1 4 2 9 3 7 3 8 8 9 4 5 6