Clasa a X-a · Tablouri bidimensionale (matrice)Read in English
Citirea și afișarea unei matrice în C++
În engleză: Reading and printing a matrix
Ideea
O matrice cu n linii și m coloane se declară ca int a[101][101] și se parcurge cu două for-uri imbricate: primul alege linia i, al doilea coloana j. Indexăm de la 1, ca în enunțurile de bacalaureat. La afișare punem un spațiu după fiecare element și un rând nou după fiecare linie. Pentru verificare afișăm și elementul din colțul dreapta-jos, a[n][m].
Descrierea în engleză
A matrix with n rows and m columns is declared as int a[101][101] and traversed with two nested for loops: the first picks the row i, the second the column j. We index from 1, as in the baccalaureate exam statements. When printing we put a space after every element and a new line after every row. As a check we also print the bottom-right corner, a[n][m].
- Complexitate
- O(n * m)
- Clasa
- Clasa a X-a (Grade 10)
Exemple
Intrare
2 3 1 2 3 4 5 6
Ieșire așteptată
1 2 3 4 5 6 6
Codul C++
Codul complet, cu comentarii în română. Îl poți modifica liber și îl poți reseta oricând.
/*
* Titlu: Citirea și afișarea unei matrice
* Clasa: 10
* Capitol: Tablouri bidimensionale (matrice)
* Descriere: O matrice cu n linii și m coloane se declară ca int a[101][101] și se
* parcurge cu două for-uri imbricate: primul alege linia i, al doilea
* coloana j. Indexăm de la 1, ca în enunțurile de bacalaureat. La afișare
* punem un spațiu după fiecare element și un rând nou după fiecare linie.
* Pentru verificare afișăm și elementul din colțul dreapta-jos, a[n][m].
* Complexitate: O(n * m)
*
* Exemplu
* Intrare:
* 2 3
* 1 2 3
* 4 5 6
* Ieșire:
* 1 2 3
* 4 5 6
* 6
*/
#include <iostream>
using namespace std;
int a[101][101];
int main()
{
int n, m;
cin >> n >> m;
for (int i = 1; i <= n; i++)
for (int j = 1; j <= m; j++)
cin >> a[i][j];
for (int i = 1; i <= n; i++)
{
for (int j = 1; j <= m; j++)
cout << a[i][j] << ' ';
cout << '\n';
}
cout << a[n][m] << '\n';
return 0;
}
Rulează pe un g++ adevărat (C++17, -O2) prin Compiler Explorer. Programele trebuie să se termine repede: există o limită de timp.