Ir ao conteúdo
  • Cadastre-se

Erro de vetor em exercício - pascal


Posts recomendados

Olá.

Curso primeiro ano de ADS e estou fazendo uns exercícios para nota de lógica de programação.

Minha professora passou um exercício com o seguinte enunciado:

 

Crie um programa dividido em procedimentos e função. Crie o procedimento Entrada que deverá ter declarado localmente a matriz dados 4x5 com números quaisquer. Crie o procedimento Positivos que deverá ter uma variável matriz positivo que armazenará apenas os números positivos contidos na matriz dados e o seu respectivo fatorial.O cálculo do fatorial deverá ser obtido na função Fatorial. Exiba o conteúdo das duas matrizes no procedimento positivos.

 

Criei os procedimentos para receber os números na matriz e outro para armazenar numa outra matriz, apenas números positivos, mas já faz horas que não consigo resolver esse erro. Segue código.

 

Erro na linha 43: A posição do 0 vetor está fora dos limites

Program Pzim ;
type num = array[1..4,1..5] of integer; 
//entrada dos numeros
procedure entradaDados();  
var
x, y: integer;
numeros:num;
begin
  for x  := 1 to 4 do
  for y := 1 to 5 do
  begin
    write('Digite 12 valores correspondentes a matriz 4x5: ');
    readln(numeros[x,y]);
  end;
end;

//armazenamento dos numeros positivos
procedure numPositivo(numeros:num);
var 
positivos: array[1..20,1..2] of integer;
x, y, cont: integer;
begin
	for numeros[x,y] := 1 to 20 do
	begin              
  for numeros[x,y] := 1 to 2 do
  begin
      if numeros[x,y] > 0 then
      cont := cont+1;
			positivos[cont,1] := numeros[x,y];		 
  end;
  if numeros[x,y] > 0 then
  positivos[x,y] := numeros[x,y]
  end;
  
  for x := 1 to 4 do
  for y := 1 to 5 do
  begin
      writeln(positivos[x,y]);
  end;
end;
Begin
  entradaDados;
  numPositivo;
  
End.

 

Agradeço desde já.

Link para o comentário
Compartilhar em outros sites

Visitante
Este tópico está impedido de receber novas respostas.

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...