Escreva um algoritmo que calcule a média dos números digitados pelo usuário, se eles forem pares. Termine a leitura se o usuário digitar zero ( 0 ).

Passo 1

O enunciado pede um algoritmo que leia vários números inteiros digitados pelo usuário, mas só acumule na média aqueles que forem pares. A leitura termina quando o usuário digitar zero. Para isso vamos usar:
  • um laço de repetição infinito (ou até condição de parada),
  • teste de paridade via operação de resto da divisão por 2,
  • acumulador de soma e contador de elementos,
  • cálculo de média ao final.

Passo 2

Inicializamos duas variáveis antes de começar a ler os números:
– um acumulador de soma, S, inicialmente zero;
– um contador N de quantos pares foram lidos, inicialmente zero.

Passo 3

Fazemos um laço de leitura em que, a cada iteração, lemos um inteiro x.
– Se x = 0, interrompemos o laço (condition de parada).
– Caso contrário, testamos se x é par usando x \bmod 2 = 0.
– Se for par, atualizamos
S \gets S + x,
N \gets N + 1.

Passo 4

Depois que o laço terminar (usuário digitou zero), verificamos o contador N:
– Se N > 0, calculamos a média dos pares como
\text{media} = \frac{S}{N}
e exibimos esse valor;
– Se N = 0, não houve números pares e exibimos mensagem apropriada.

Resposta

Algoritmo MediaPares
  // Variáveis
  S \leftarrow \(0\)        // soma dos números pares
  N \leftarrow \(0\)        // contador de números pares
  x \leftarrow ?        // número lido

  // Laço de leitura até zero
  Enquanto verdadeiro Faça
    Leia x
    Se x \(=0\) Então
      Pare   // sai do laço
    FimSe
    // Se o número for par, acumula
    Se x \text{ mod } \(2=0\) Então
      S \leftarrow S \(+\) x
      N \leftarrow N \(+1\)
    FimSe
  FimEnquanto

  // Cálculo e saída da média
  Se N > \(0\) Então
    media \leftarrow S / N
    Escreva("Média dos números pares: ", media)
  Senão
    Escreva("Nenhum número par foi digitado.")
  FimSe
FimAlgoritmo

Exercícios relacionados