Tablouri Bidimensionale
#include <iostream.h>
void main ()
{
int x[10][10], n, m, i, j;//m=matricea, n, m= nr actual de linii/coloane, i,
j=linia, respectiv coloana
cout<<”Dati numarul de linii: “; cin>>n;//citim nr de linii
cout<<”Dati numarul de coloane: “; cin>>m; //citim nr. de coloane
cout<<”Introduceti elementele matricei: “<<endl;
for (i=0; i<n; i++)
for (j=0; j<m; j++)
{
cout<<”x["<<i<<"]["<<j<<"]=”;
cin>>x[i][j]; //citim elementele matricei
}
cout<<”Afisam matricea: “<<endl;
for (i=0; i<n; i++)
for (j=0; j<m; j++)
{cout<<x[i][j]<<” “; //si afisam fiecare linie, respectiv coloana, dar
cu un mic spatiu intre elemente
cout<<endl; //dupa fiecare linie terminata, trebuie sa trecem la alt
rand
}
}
Matrici in C++
1)Definitie:
O matrice este o forma de organizare tabelara a unor elemente care
au acelsi tip, componentele acesteia putand fi identificate printr-un
nume urmat (intre paranteze drepte) de pozitia acestora in cadrul
vectorului. Identificarea pozitiei in cadrul matricii se realizeaza prin
specificarea liniei si coloanei pe care se afla elementul matricii.
1 #include <iostream>
2 using namespace std;
3 int main()
4 {
5 int i, j, m, n, M[10][10];
6 cout<<"Introduceti numarul de linii: m=";
7 cin>>m;
8 cout<<"Introduceti numarul de coloane: n=";
9 cin>>n;
10 cout<<"Introduceti numerele:"<<endl;
11 for (i=0;i<m;i++)
12 for (j=0;j<n;j++)
13 {
14 cout<<"M["<<i<<"]["<<j<<"]=";cin>>M[i][j];
15 }
16 }
1 #include <iostream>
2 using namespace std;
3 int main()
4 {
5 int i, j, m, n, M[10][10], suma;
6 cout<<"Introduceti numarul de linii: m=";
7 cin>>m;
8 cout<<"Introduceti numarul de coloane: n=";
9 cin>>n;
1 suma=0;
0 cout<<"Introduceti numerele:"<<endl;
1 for (i=0;i<m;i++)
1 for (j=0;j<n;j++)
1 {
2
1
3
1
4
1 cout<<"M["<<i<<"]["<<j<<"]=";cin>>M[i][j];
5 suma=suma+M[i][j];
1 }
6 cout<<"Suma elementelor matricii este: "<<suma<<endl;
1 }
7
1
8
1
9
Probleme:
1 #include <iostream>
2 using namespace std;
3 int main()
4 {
5 int n,m,i,j,a[20][20];
6 int nr,s=0;
7 cout<<"m=";cin>>m;
8 cout<<"n=";cin>>n;
9 for(i=1;i<=m;i++)
1 for(j=1;j<=n;j++)
0 {
1 cout<<"a["<<i<<"]["<<j<<"]=";
1 cin>>a[i][j];
1 }
2 cout<<"Matricea este:"<<endl;
1
3
1
4
1
5
1
6
1
7
1
for(i=1;i<=m;i++)
8
{
1
for(j=1;j<=n;j++)
9
cout<<a[i][j]<<" ";
2
cout<<endl;
0
}
2
for(i=1;i<=m;i++)
1
for(j=1;j<=n;j++)
2
s=s+a[i][j];
2
nr=m*n;
2
cout<<"Matricea contine:"<<nr<<" elemente"<<endl;
3
cout<<"Suma elementelor matricii este:"<<s<<endl;
2
cout<<"Media aritmetica a acestora este: "<<(float)s/nr;
4
return 0;
2
}
5
2
6
2
7
2
8
2
9
3
0
2 Sa se calculeze suma elementelor de pe diagonala principala a unei matrici
. patratice.
1 #include <iostream>
2 using namespace std;
3 int main()
4 {
5 int n,i,j,a[20][20],s=0;
6 cout<<"n=";cin>>n;
7 for(i=1;i<=n;i++)
8 for(j=1;j<=n;j++)
9 {
1 cout<<"a["<<i<<"]["<<j<<"]=";
0 cin>>a[i][j];
1 }
1 cout<<"Matricea este:"<<endl;
1 for(i=1;i<=n;i++)
2 {
1 for(j=1;j<=n;j++)
3 cout<<a[i][j]<<" ";
1 cout<<endl;
4 }
1 for(i=1;i<=n;i++)
5 s=s+a[i][i];
1 cout<<"Suma elementelor de pe diagonala principala a matricii
6 este:"<<s<<endl;
1 return 0;
7 }
1
8
1
9
2
0
2
1
2
2
2
3
2
4
1 #include <iostream>
2 using namespace std;
3 int main()
4 {
5 int n,i,j,a[20][20],p=1;
6 cout<<"n=";cin>>n;
7 for(i=1;i<=n;i++)
8 for(j=1;j<=n;j++)
9 {
1 cout<<"a["<<i<<"]["<<j<<"]=";
0 cin>>a[i][j];
1 }
1 cout<<"Matricea este:"<<endl;
1 for(i=1;i<=n;i++)
2 {
1 for(j=1;j<=n;j++)
3 cout<<a[i][j]<<" ";
1 cout<<endl;
4 }
1 for(i=1;i<=n;i++)
5 p=p*a[i][n-i+1];
1 cout<<"Produsul elementelor de pe secundara a matricii
6 este:"<<p<<endl;
1 return 0;
7 }
1
8
1
9
2
0
2
1
2
2
2
3
2
4
1 #include <iostream>
2 using namespace std;
3 int main()
4 {
5 int m,n,i,j,a[20][20],s;
6 cout<<"m=";cin>>m;
7 cout<<"n=";cin>>n;
8 for(i=1;i<=m;i++)
9 for(j=1;j<=n;j++)
1 {
0 cout<<"a["<<i<<"]["<<j<<"]=";
1 cin>>a[i][j];
1 }
1 cout<<"Matricea este:"<<endl;
2 for(i=1;i<=m;i++)
1 {
3 for(j=1;j<=n;j++)
1 cout<<a[i][j]<<" ";
4 cout<<endl;
1 }
5 for(i=1;i<=m;i++)
1 {
6
1
7
1
8
1
9
2
0
2
1 s=0;
2 for(j=1;j<=n;j++)
2 s=s+a[i][j];
2 cout<<"Suma elementelor de pe linia "<<i<<" este: "<<s<<endl;
3 }
2 return 0;
4 }
2
5
2
6
2
7
2
8
2
9
1 #include <iostream>
2 using namespace std;
3 int main()
4 {
5 int m,n,i,j,a[20][20],s;
6 cout<<"m=";cin>>m;
7 cout<<"n=";cin>>n;
8 for(i=1;i<=m;i++)
9 for(j=1;j<=n;j++)
1 {
0 cout<<"a["<<i<<"]["<<j<<"]=";
1 cin>>a[i][j];
1 }
1 cout<<"Matricea este:"<<endl;
2 for(i=1;i<=m;i++)
1 {
3 for(j=1;j<=n;j++)
1 cout<<a[i][j]<<" ";
4 cout<<endl;
1 }
5 for(j=1;j<=n;j++)
1 {
6 s=0;
1 for(i=1;i<=m;i++)
7 s=s+a[i][j];
1 cout<<"Suma elementelor de pe coloana "<<j<<" este:
8 "<<s<<endl;
1 }
9 return 0;
2 }
0
2
1
2
2
2
3
2
4
2
5
2
6
2
7
2
8
2
9
1 #include <iostream>
2 using namespace std;
3 int main()
4 {
5 int n,i,j,a[20][20],at[20][20];
6 cout<<"n=";cin>>n;
7 for(i=1;i<=n;i++)
8 for(j=1;j<=n;j++)
9 {
1 cout<<"a["<<i<<"]["<<j<<"]=";
0 cin>>a[i][j];
1 }
1 cout<<"Matricea este:"<<endl;
1 for(i=1;i<=n;i++)
2 {
1 for(j=1;j<=n;j++)
3 cout<<a[i][j]<<" ";
1 cout<<endl;
4 }
1 cout<<"Matricea transpusa este:"<<endl;
5 for(i=1;i<=n;i++)
1 {
6 for (j=1;j<=n;j++)
1 {
7 at[i][j]=a[j][i];
1 cout<<at[i][j]<<" ";
8 }
1
9
2
0
2
1
2
2
2
3
2
4 cout<<endl;
2 }
5 return 0;
2 }
6
2
7
2
8
2
9
3
0
3
1