
Prof. Paulo Rettore
Universidade Federal de Lavras
GAC124 — Introdução aos Algoritmos
Uma matriz organiza valores do mesmo tipo em duas dimensões: linha e coluna.
int notas[3][4];O acesso usa dois índices: notas[linha][coluna].
Primeiro índice
0 ... L-1
Segundo índice
0 ... C-1
Par de índices
m[i][j]
Em uma matriz 3 × 4, existem 3 linhas e 4 colunas.
int m[2][3] = {
{10, 20, 30},
{40, 50, 60}
};
cout << m[1][2]; // 60A linha 1, coluna 2 contém 60. Os índices começam em zero.
for (int i = 0; i < 2; i++) {
for (int j = 0; j < 3; j++) {
cout << m[i][j] << " ";
}
cout << "\n";
}O for externo controla as linhas; o interno controla as colunas.
int soma = 0;
for (int i = 0; i < L; i++) {
for (int j = 0; j < C; j++) {
soma += m[i][j];
}
}A mesma ideia serve para contar, buscar maior valor ou calcular médias.
for (int i = 0; i < N; i++)
cout << m[i][i] << " ";Em uma matriz quadrada, a diagonal principal usa posições em que linha == coluna.
Exemplo: m[0][0], m[1][1], m[2][2].
const int L = 2, C = 3;
void imprime(const int m[][C]) {
for (int i = 0; i < L; i++)
for (int j = 0; j < C; j++)
cout << m[i][j];
}O número de colunas precisa estar disponível para o compilador.
Leia uma matriz 3 × 4 de notas e mostre a soma de cada linha.
for para escolher a linha.for para percorrer as colunas.Uma matriz pode representar alunos × atividades, dias × horários ou pixels × posições.
Leia uma matriz 3 × 3 e mostre a soma da diagonal principal.
Gabarito orientador: Use dois índices para a matriz e observe que a diagonal principal é formada pelas posições m[i][i].
Use estas fontes para consultas pontuais depois da aula:
Os slides completos, o Campus Virtual e o DREDD continuam sendo as fontes principais da disciplina.
Observe como o for interno percorre todas as colunas antes de a linha mudar. Use os controles para avançar.
A diagonal principal aparece quando i == j. Em uma matriz não quadrada, a regra continua válida apenas enquanto a posição existir.
Para consultar exemplos e exercícios sobre matrizes e vetores:
PRÓXIMA AULA
Prof. Paulo Rettore
GAC124 — Introdução aos Algoritmos