|
Politica de confidentialitate |
|
• domnisoara hus • legume • istoria unui galban • metanol • recapitulare • profitul • caract • comentariu liric • radiolocatia • praslea cel voinic si merele da aur | |
OPERATII DE BAZA CU TABLOURI BIDIMENSIONALE
1. Citirea unei matrice
Se citeste numarul de linii si de coloane dupa care, in doua instructiuni FOR incluse una in cealalta, se citesc elementele matricei. Primul FOR parcurge cele n linii iar al doilea parcurge elementele de pe cate o linie.
write('Dati numarul de linii: ');
readln(n);
write('Dati numarul de coloane: ');
readln(m);
for i:=1 to n do
for j:=1 to m do
begin
write(' a[',i,',',j,']=');
readln(a[i,j]);
end
2. Afisarea unei matrice
Se folosesc doua instructiuni FOR. Pentru fiecare linie, se afiseaza elementele, pe rand si se trece la linia urmatoare de ecran.
for i:=1 to n do
begin
for j:=1 to m do
write(a[i,j],' ');
writeln;
end;
3. Parcurgere pe linii a matricei
Daca parcurgem elementele matricei pe linii, atunci le obtinem in ordinea: a11, a12, , a1m, a21, a22, , a2m, , an1, an2, , anm, unde n este numarul de linii iar m este numarul de coloane.
writeln('Matricea parcursa pe linii:');
for i:=1 to n do
for j:=1 to m do
write(a[i,j],' ');
4. Parcurgere
pe
Daca parcurgem elementele matricei pe coloane, atunci le obtinem in ordinea: a11, a21, , an1, a12, a22, , an2, , a1m, a2m, , anm , unde n este numarul de linii iar m este numarul de coloane.
writeln('Matricea parcursa pe coloane:');
for j:=1 to m do
for i:=1 to n do
write(a[i,j],' ');
5. Interschimbarea a doua linii
Data fiind o matrice cu n linii si m coloane, se cere sa se schimbe intre ele doua linii ale caror numere de ordine sunt date. Secventa de instructiuni cuprinde si validarea datelor si anume, numerele de linie p, respectiv q, sa fie cuprinse intre 1 si n (inclusiv) si sa nu coincida.
repeat
writeln('Dati liniile de interschimbat:');
readln(p,q);
until (p in [1..n]) and (q in [1..n]) and (p<>q);
for i:=1 to m do
begin
s:=a[p,i];
a[p,i]:=a[q,i];
a[q,i]:=s;
end;
6. Diagonala
principala a unei
Daca elementele unei matrice patratice cu n linii si n coloane (numarul de linii este egal cu numarul de coloane) sunt:
, atunci diagonala principala contine elementele a11, a22, ., ann sau, mai pe scurt aii, cu i:=1,n. Parcurgerea acestora se face cu o singura instructiune for, ca in exemplul urmator:
writeln('Elementele diagonalei principale sunt: ');
for i:=1 to n do
write(a[i,i],' ');
7. Diagonala
secundara a unei
In aceeasi matrice patratica de mai sus, diagonala secundara este formata din elementele: a1n, a2,n-1, a3,n-2, , an-1,2, an,1. Deoarece fiecare dintre aceste elemente aij are suma indicilor i+j=n+1, diagonala secundara are elementele ai,n-i+1, cu i=1, , n si este deci suficienta urmatoarea instructiune for pentru a o parcurge.
writeln('Elementele diagonalei secundare sunt: ');
for i:=1 to n do
write(a[i,n-i+1],' ');
8.
((aij, i=1,n), j=i, n) - inclusiv diagonala
((aij, i=1,n-1), j=i+1, n) - fara diagonala
9.
((aij, i=1,n), j=1, i) - inclusiv diagonala
((aij, i=2,n), j=1, i-1) - fara diagonala
10.
((aij, i=1,n), j=1, n-i+1) - inclusiv diagonala
((aij, i=1,n-1), j=1, n-i) - fara diagonala
11.
((aij, i=1,n), j=n-i+1, n) - inclusiv diagonala
((aij, i=2,n), j=n-i+2, n) - fara diagonala
|