Olá, pessoas.
Criei um programa com fins de estudo no visualg, cuja finalidade é preencher uma matriz com valores aleatórios e, em seguida, conferir e armazenar numa segunda atriz se o valores gerados são pares ou ímpares. Todavia o programa fica dando um erro (“Access violation at address xxxx in module” visualg30.exe). Não sei se eu que estou errando na lógica, se meu pc está quebrado ou se é um bug do visualg.
Abaixo deixo meu código para quem puder me ajudar. Obrigado :)
P.S: Por alguma razão a indentação não está funcionando. Espero que compreendam.
Var
// Seção de Declarações das variáveis
matriz1: vetor [0…2, 0…2] de inteiro
matriz2: vetor [0…2, 0…2] de caractere
// Procedimento que gera valores inteiros aleatorios para preencher a matriz1.
procedimento preencheMatriz
var
// Variaveis contadoras
i1, i2: inteiro
inicio
para i1 de 0 ate 1 passo 1 faca
para i2 de 0 ate 2 passo 1 faca
aleatorio on
leia (matriz1[i1,i2])
limpatela
aleatorio off
fimpara
fimpara
// Imprimindo a matriz na tela
para i1 de 0 ate 1 passo 1 faca
para i2 de 0 ate 2 passo 1 faca
escreva (matriz1[i1,i2])
fimpara
escreval ("")
fimpara
fimprocedimento
// Procedimento que verifica se os valores das posições da matriz1 são pares
// ou ímpares.
procedimento verificaParImpar
var
i1, i2: inteiro
inicio
para i1 de 0 ate 1 passo 1 faca
para i2 de 0 ate 2 passo 1 faca
se (matriz1[i1, i2] MOD 2=0) entao
matriz2[i1,i2] <- "par"
escreva(matriz2[i1,i2], " ")
senao
matriz2[i1,i2] <- "ímpar"
escreva(matriz2[i1,i2], " “)
fimse
fimpara
escreval(” ")
fimpara
fimprocedimento
Inicio
// Seção de Comandos, procedimento, funções, operadores, etc…
preencheMatriz
verificaParImpar
Fimalgoritmo