Olá pessoal. alguém poderia me dar uma mão com esse código. Faça um programa que receba como entrada uma lista de numeros positivos e negativos que se finaliza quando o numero 0 (zero) é inserido. como saída, ele deve dar a soma dos numeros positivos e dos numeros negaativos e soma das duas somas. solução (ate onde eu consegui fazer funcionar): Program contador; var i, a, b, c, d, e: integer; vet : array[0..1000] of integer; begin b:= 0; a:= 0; c:= 0; e:= 0; repeat writeln('Digite um numero: '); readln(; if (b <> 0) then begin vet[a]:= b; i:= i + 1; end; until (b = 0); for a := 0 to i do if (vet[a] > 0) then begin c:= c + vet[a]; end else if (vet[a] < 0) then begin d:= d + vet[a]; end; e:= c + d; writeln©; writeln(d); writeln(e); end. ele está meio mal organizado, porque eu totestando. ele está com os seguintes bugs: - eu não consegui fazer uma array que tenha um limite determinado pelo usuário (até que se digite 0), em c eu fiz tudo, mas não conheco quase nada em pascal. - as somas dos valores positivos e os negativos estão dando errado, não sei se é um erro na estrutura que percorre a array ou se é a estrutura da soma propriamente dita. Resumindo: gostaria que vocês me ajudassem a criar uma estrutura de array cujo tamanho seja determinado pelo usuário, conforme os valores que são inseridos pelo usuário. além disso, me ajudem com a soma dos valores inseriddos na array e a soma dos resultados. agradeço antecipadamente a todos.