a IX-a A27 lecții INFORMATICĂ | 12 lecții T.I.C.
Informatică
Lectia 00001   |   Lectia 00   |   Lectia 01   |   Lectia 02   |   Lectia 03   |   Lectia 04   |   Lectia 05   |   Lectia 06   |   Lectia 07   |   Lectia 08   |   Lectia 09   |   Lectia 10   |   Lectia 101   |   Lectia 102   |   Lectia 103   |   Lectia 11   |   Lectia 11_2   |   Lectia 12   |   Lectia 12_2   |   Lectia 12_3   |   Lectia 12_4   |   Lectia 12_5   |   Lectia 13   |   Lectia 14   |   Lectia 17
Lectia 18   |   Lectia 19
T.I.C.

Lectia 01   |   Lectia 02   |   Lectia 03   |   Lectia 04
Lectia 05   |   Lectia 06   |   Lectia 07   |   Lectia 08   |   Lectia 09
Lectia 10   |   Lectia 11   |   Lectia 12
a IX-a B0 lecții INFORMATICĂ | 0 lecții T.I.C.
a IX-a C0 lecții INFORMATICĂ | 11 lecții T.I.C.
T.I.C.
Lectia 01   |   Lectia 02   |   Lectia 03   |   Lectia 04
Lectia 05   |   Lectia 06   |   Lectia 07   |   Lectia 08
Lectia 10   |   Lectia 12   |   Lectia 13
a IX-a D0 lecții INFORMATICĂ | 0 lecții T.I.C.
a IX-a E0 lecții INFORMATICĂ | 0 lecții T.I.C.
a X-a A5 lecții INFORMATICĂ | 10 lecții T.I.C.
Opțional
Fișa 01   |   Fișa 02   |   Fișa 03   |   Fișa 04   |   Fișa 05
T.I.C.

Lectia 07   |   Lectia 08   |   Lectia 09   |   Lectia 10   |   Lectia 11   |   Lectia 12   |   Lectia 13   |   Lectia 14
Lecția 14_1
Lectia 15
a X-a B0 lecții INFORMATICĂ | 0 lecții T.I.C.
a X-a C0 lecții INFORMATICĂ | 0 lecții T.I.C.
a X-a D0 lecții INFORMATICĂ | 0 lecții T.I.C.
a XI-a A16 lecții INFORMATICĂ | 0 lecții T.I.C.
Informatică
Lectia 07
Lectia 07 --- [ Teorie + 2 Probleme rezolvate ]

Tablouri bidimensionale – matrice

 Un tablou cu două dimensiuni se numeşte matrice.

Declarare
                     int a[50][100], n, m, i, j;
S-a declarat:
– o matrice cu maxim 50 de linii şi 100 de coloane, numerotarea se face de la 0 sau de la 1.
– n- numarul efectiv de linii;
– m-numarul efectiv de coloane;
– i- contor pentru linie
– j- contor pentru coloane
Citire:
                    for(i=1; i<=n;i++)
                       for(j=1;j<=m;j++)
                        {   cout<<”a[“<<i<<”][“<<j<<”]=”;

cin>>a[i][j];

  }

Afisare:
                  for(i=1;i<=n;i++)
                         {
                           for(j=1;j<=j;j++)
                                 cout<<a[i][j]<<” “;
                                       cout<<“ ”;
                          }

 Matrice patratica

Într-o matrice pătratică numarul de linii= numarul de coloane (n=m).

Într-o matrice pătratică avem:

  •                                 Diagonala principala elementele a[i][i], cu i=1,n        sau         a[i][i], cu i=0,n-1
  •                                 Diagonala secundara elementele a[i][n-i+1], i=1,n        sau         a[i][n-i-1], i=0,n-1

Zonele determinate de diagonale:
I.
               Pe diagonala principală i=j
               Sub diagonala principala: i>j
               Deasupra diagonalei principale: i<j
II.
               Pe diagonala secundară j=n-i+1
               Sub diagonala secundara: j>n-i+1
               Deasupra diagonalei secundare:j<n-i+1


1. Sa se scrie un program C++ care citeste doua matrice patratice de dimensiune n si determina suma lor.
Propune o soluție

S
o
l
u
ț
i
a:
Introdu următorul text: 160352382
#include <iostream>
using namespace std;
int i,j;
void citire_matrice(int x[20][20], int n)
{

  for (i=1; i<=n; i++)
	for (j=1; j<=n; j++)
	{
	    cout<<"x["<<i<<"]["<<j<<"]=";
        cin>>x[i][j];
	}
}
void afisare_matrice(int x[20][20], int n)
{ for (i=1; i<=n; i++)
    { for(j=1; j<=n; j++)
	     cout<<x[i][j]<<" ";
	  cout<<endl;
    }
}
void suma(int a[20][20],int b[20][20], int n, int s[20][20])
{   for(i=1;i<=n;i++)
    for(j=1;j<=n;j++)
      s[i][j]=a[i][j]+b[i][j];
}
main()
{ int a[20][20],b[20][20], c[20][20], n;
 cout<<"n=";
 cin>>n;
  citire_matrice(a,n);
  citire_matrice(b,n);
  cout<<endl<<"Matricea A: "<<endl; afisare_matrice(a,n);
  cout<<endl<<"Matricea B: "<<endl; afisare_matrice(b,n);
 suma(a,b,n,c);
  cout<<endl<<"Matricea suma: "<<endl; afisare_matrice(c,n);
return 0;
}
2. Sa se scrie un program C++ care citeste o matrice patratica de dimensiune n si determina suma elementelor pare si elementul minim din matrice
Propune o soluție

S
o
l
u
ț
i
a:
Introdu următorul text: 413270138
#include <iostream>
using namespace std;
int i,j;
void citire_matrice(int x[20][20], int n)
{

  for (i=1; i<=n; i++)
	for (j=1; j<=n; j++)
	{
	    cout<<"x["<<i<<"]["<<j<<"]=";
        cin>>x[i][j];
	}
}
void afisare_matrice(int x[20][20], int n)
{ for (i=1; i<=n; i++)
    { for(j=1; j<=n; j++)
	     cout<<x[i][j]<<" ";
	  cout<<endl;
    }
}
int suma_pare(int a[20][20],int n)
{ int s=0;
  for (int i=1; i<=n; i++)
     for (int j=1; j<=n; j++)
       if(a[i][j]%2==0)  s=s+a[i][j];
  return s;
}
int minim(int a[20][20],int n)
{ int min=a[1][1];
  for (int i=1; i<=n; i++)
     for (int j=1; j<=n; j++)
       if(a[i][j]<min)  min=a[i][j];
  return min;
}
main()
{ int a[20][20],b[20][20], c[20][20], n;
 cout<<"n=";
 cin>>n;
  citire_matrice(a,n);
  cout<<endl<<"Matricea A: "<<endl; afisare_matrice(a,n);
  cout<<endl<<"Suma elem. pare din A: "<<suma_pare(a,n);
  cout<<endl<<"Elem. minim din A: "<<minim(a,n);
return 0;
}

Fii primul care comentează lecţia
     Submit
  |   Lectia 08   |   Lectia 09   |   Lectia 10   |   Lectia 11   |   Lectia 12   |   Lectia 13   |   Lectia 14
Lectia 16   |   Lectia 18   |   Lectia 19   |   Lectia 20   |   Lectia 21
Lectia 23   |   Lectia 24
Lectia 36
a XI-a B0 lecții INFORMATICĂ | 0 lecții T.I.C.
a XI-a C0 lecții INFORMATICĂ | 0 lecții T.I.C.
a XI-a D0 lecții INFORMATICĂ | 9 lecții T.I.C.
T.I.C.
Fişa 01   |   Fişa 02
Lectia 01   |   Lectia 02   |   Lectia 03   |   Lectia 04   |   Lectia 05   |   Lectia 06   |   Lectia 07
a XI-a E0 lecții INFORMATICĂ | 1 lecții T.I.C.
T.I.C.
Fişa 01
a XII-a A2 lecții INFORMATICĂ | 0 lecții T.I.C.
Informatică
Lectia 01   |   Lectia 02
a XII-a B0 lecții INFORMATICĂ | 0 lecții T.I.C.
a XII-a C0 lecții INFORMATICĂ | 0 lecții T.I.C.
a XII-a D0 lecții INFORMATICĂ | 0 lecții T.I.C.
a XII-a E0 lecții INFORMATICĂ | 0 lecții T.I.C.
Excelenta A0 lecții INFORMATICĂ | 0 lecții T.I.C.