# 7.2 - Matrizes

Matrizes são vetores acoplados que formam linhas e colunas.

Por exemplo,temos 5 alunos, e cada aluno possui 5 anos.

Para facilitar,podemos utilizar matrizes:

























#include <iostream>
#include <array>
#include <string>

int main ()
{
    /*|--------------------------------------|
     *|                                      |
     *|           He4rt Developers           |
     *|                                      |
     *|--------------------------------------|
     */

    int matriz[5][5];

    for(int i = 0;i < 5;i++)
        for(int j = 0;j < 5;j++)
            std::cin >> matriz[i][j];

    for(int i = 0;i < 5;i++)
        for(int j = 0;j < 5;j++)
            std::cout << matriz[i][j] << std::endl;
}

Podemos também utilizar std::array:


































#include <iostream>
#include <array>
#include <string>

int main ()
{

    /*|--------------------------------------|
     *|                                      |
     *|           He4rt Developers           |
     *|                                      |
     *|--------------------------------------|
     */

    //Temos um vetor de vetor, com as linha representando cada aluno, e as colunas cada nota

    std::array<std::array<float, 5> , 5> alunos_nota = {{  {{4.5, 6.3, 5.5, 6.1, 7.2}},      // Aluno 0
                                                           {{1.2, 4.2, 8.1, 8.3, 8.2}},      // Aluno 1
                                                           {{5.2, 4.2, 6.4, 5.6, 7.2}},      // Aluno 2
                                                           {{4.2, 5.4, 6.2, 5.2, 7.5}},      // Aluno 3
                                                           {{2.2, 4.4, 2.3, 5.5, 3.2}}  }};  // Aluno 4

    std::cout << "Notas dos alunos: \n\n";

    for (float i : alunos_nota){ // Percorre cada linha
        for (float j : i){ // Percorre cada coluna, assim que chegar ao final da coluna, vai para a próxima linha
            std::cout << j << ' ';
        }

        std::cout<< std::endl; // A cada linha lida
    }
}

WARNING

O std::array é um wrapper por volta de um C array, por possuir uma implementação super simples, a diferença de performance e recursos utilizados entre o C array padrão e o std::array podem ser considerados nulos.