Uma matriz organiza valores do mesmo tipo em linhas e colunas. No VisuAlg, ela é declarada como um vetor de duas dimensões: mat: vetor[1..2, 1..2] de inteiro. Para acessar uma célula, informe os dois índices, como mat[2,1]: linha 2, coluna 1.
Declaração e acesso
A primeira dimensão define as linhas e a segunda define as colunas. Uma matriz 2 por 3 possui seis células. Cada índice deve respeitar seu intervalo; mat[linha,coluna] não equivale a mat[linha][coluna] na sintaxe usada aqui.
algoritmo "Matriz2x2"
var
mat: vetor[1..2, 1..2] de inteiro
inicio
mat[1,1] <- 10
mat[1,2] <- 20
mat[2,1] <- 30
mat[2,2] <- 40
escreval("O valor na linha 2, coluna 1 é: ", mat[2,1])
fimalgoritmoPara varrer uma matriz inteira e mostrar no formato de grade, precisamos usar a técnica de laços aninhados (um Laço Para focado na Linha, e um Laço Para dentro dele focado na Coluna).
algoritmo "Matriz3x3"
var
m: vetor[1..3, 1..3] de inteiro
l, c: inteiro
inicio
para l de 1 ate 3 faca
para c de 1 ate 3 faca
m[l,c] <- l + c
escreva("[", m[l,c]:2, "] ")
fimpara
escreval("")
fimpara
fimalgoritmoErros comuns e exercício
Não troque linha e coluna, não use índices fora do intervalo e não deixe o mesmo contador controlar os dois laços. Para preencher a matriz do exercício com entradas do usuário, substitua a atribuição por leia(m[l,c]) dentro dos laços.
Revise vetores e o laço PARA. Depois pratique os exercícios de matrizes e observe a aplicação no jogo da velha.