Sunteți pe pagina 1din 4

Matrici pătratice

Definiţie O matrice pătratică reprezintă o matrice în care în care numărul de linii este egal cu numărul de
coloane.

linia 0 2 3 5 6 7
linia 1 10 3 -2 3 4
linia 2 2 3 4 5 6
linia 3 6 7 8 9 10
linia 4 12 23 23 23 11
coloana 0 coloana 1 coloana 2 coloana 3 coloana 4

Introducere elemente într-o matrice pătratică:

cout<<"Introduceti nr_linii_coloane: ";cin>>n;


for (i=0; i<n; i++) parcurge liniile
for (j=0; j<n; j++) parcurge coloanele
{
cout<<"M["<<i<<"]["<<j<<"]=";
cin>>M[i][j]; memoreaza valoarea in locatie
}

Afişarea elementelor dintr-o matrice pătratică:

for (i=0; i<n; i++) parcurge liniile


{
for (j=0; j<n; j++) parcurge coloanele
cout<<M[i][j]<<" "; se afisează elementele din randul i
cout<<endl; // pentru a trece la randul i+1
}

Parcurgerea unei matrice pătratică:

for (i=0; i<n; i++)


for (j=0; j<n; j++)
{
calcule
}
Aplicaţii:

1. Să se scrie un program C++ care introduce de la tastatură o matrice M cu n linii şi n coloane şi apoi o
afişează pe ecran.

int main()
{
int M[50][50], n,i,j;
cout<<"Introduceti nr_linii_coloane: ";cin>>n;
for (i=0; i<n; i++)
for (j=0; j<n; j++)
{
cout<<"M["<<i<<"]["<<j<<"]=";
cin>>M[i][j];
}
for (i=0; i<n; i++)
{
for (j=0; j<m; j++)
cout<<M[i][j]<< " ";
cout<<endl;
}
}

Diagonale

linia 0 2 3 5 6
linia 1 10 3 -2 3
linia 2 2 3 4 5
linia 3 6 7 8 9
coloana 0 coloana 1 coloana 2 coloana 3

Verde – diagonala principală


Albastru - digonala secundară

Aplicaţii:

2. Să se determine suma elementelor pe diagonala principală.

int main()
{
int M[50][50], n,i,j;
cout<<"Introduceti nr_linii_coloane: ";cin>>n;
for (i=0; i<n; i++)
for (j=0; j<n; j++)
{
cout<<"M["<<i<<"]["<<j<<"]=";
cin>>M[i][j];
}
s=0;
for (i=0; i<n; i++)
for (j=0; j<m; j++)
if (i==j) s=s+M[i][j];
cout<<s;
}

3. Să se determine suma elementelor aflate deasupra diagonalei principale.

linia 0 2 3 5 6
linia 1 10 3 -2 3
linia 2 2 3 4 5
linia 3 6 7 8 9
coloana 0 coloana 1 coloana 2 coloana 3

4. Să se determine suma elementelor aflate dedesubtul diagonalei principale.

linia 0 2 3 5 6
linia 1 10 3 -2 3
linia 2 2 3 4 5
linia 3 6 7 8 9
coloana 0 coloana 1 coloana 2 coloana 3

M00 M01 M02 M03


M10 M11 M12 M13
M20 M21 M22 M23
M30 M31 M32 M33

Elementele aflate pe diagonala principala i=j


Elementele aflate deasupra diagonalei principale i<j
Elementele aflate dedesubtul diagonalei principale i>j

Elementele aflate pe diagonala secundara i+j=n-1


Elementele aflate deasupra diagonalei secundare i+j<n-1
Elementele aflate dedesubtul diagonalei secundare i+j>n-1
5. Să se creeze o matrice M cu n linii care are toate elementele egale cu 1.

int main()
{
int M[50][50], n,i,j;
cout<<"Introduceti nr_linii_coloane: ";cin>>n;
for (i=0; i<n; i++)
for (j=0; j<n; j++)
{
M[i][j]=1;
}
for (i=0; i<n; i++)
{
for (j=0; j<m; j++)
cout<<M[i][j]<< " ";
cout<<endl;
}
}

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