(2) Faça um programa que lê oito números inteiros e os armazena em um vetor, calcule e mostre dois vetores resultantes. O primeiro vetor resultante deve conter os números positivos; o segundo deve conter os números negativos. Cada vetor resultante vai ter, no máximo, oito posições, que poderão não ser completamente utilizadas.

Exemplo de entrada:

Digite 8 números inteiros: 1015 -2 7 21-6-4

Exemplo de saída:

Positivos: 1015721
Negativos: -2-6-4

Passo 1

Beleza, então o enunciado pede um programinha que leia 8 números inteiros, coloque todos eles num vetor (ou “array”) e, depois, crie dois vetores-filhos: um só com os positivos e outro só com os negativos. A matéria aqui é bem básica de lógica de programação: a gente vai usar
  1. vetores (arrays) para armazenar os números,
  2. um laço de repetição (loop) pra ler os 8 valores,
  3. uma estrutura condicional (if) pra decidir se um número é positivo ou negativo, e
  4. ao final, imprime os dois vetores resultantes.

Passo 2

Primeiro, vamos preparar dois vetores vazios com capacidade para 8 posições cada, digamos:
• vetorPositivos com espaço para 8 números
• vetorNegativos com espaço para 8 números
E também precisaremos de dois contadores, ip e in, para controlar em que posição a gente vai inserir no vetorPositivos e no vetorNegativos, respectivamente. Inicialmente, ip = 0 e in = 0.

Passo 3

Agora criamos um loop que vai de 1 até 8 (ou de 0 até 7, como preferir). A cada iteração:
  1. Leio o próximo número inteiro, chamo de n.
  2. Uso a condicional:
    if então
    vetorPositivos[ip] = n
    ip = ip + 1
    else if então
    vetorNegativos[in] = n
    in = in + 1
    else
    // se for zero, a gente pode simplesmente ignorar, já que nem entra em positivos nem em negativos
Aqui usei em LaTeX a comparação e só pra ficar bonitinho.

Passo 4

Quando o loop terminar, os contadores ip e in vão dizer quantos valores foram colocados em cada vetor. Basta imprimir:
• “Positivos: ” seguido de todos os elementos de vetorPositivos desde a posição 0 até ip–1,
• “Negativos: ” seguido de todos os elementos de vetorNegativos desde a posição 0 até in–1.
No exemplo do enunciado, a saída não usa espaços entre os números, então a gente faz justamente uma concatenação direta.

Resposta

Para a entrada
Digite 8 números inteiros: 1015 -2 7 21 -6 -4
a saída vai ser:
Positivos: 1015721
Negativos: -2-6-4

Exercícios relacionados