Faça um programa que leia uma quantidade não determinada de números inteiros. O programa deve calcular e escrever a quantidade de números pares e ímpares, a média aritmética dos números pares e a divisão do somatório dos números pares pelo somatório dos números ímpares. O número que encerrará a leitura será zero, que não deve ser considerado.

Passo 1

Beleza, vamos lá! O exercício pede para criar um programa que leia números inteiros até o usuário digitar zero. A gente precisa contar quantos números são pares e ímpares, calcular a média dos pares e dividir a soma dos pares pela soma dos ímpares. Para isso, vamos usar conceitos de loops (para continuar lendo os números até o zero) e condicionais (para verificar se os números são pares ou ímpares).

Passo 2

Primeiro, vamos inicializar algumas variáveis para guardar as contagens e somas que vamos precisar:
  • contador_pares para contar quantos números pares foram digitados.
  • contador_impares para contar quantos números ímpares foram digitados.
  • soma_pares para somar todos os números pares.
  • soma_impares para somar todos os números ímpares.
Então, no começo do programa, a gente define todas essas variáveis com valor zero:
contador_pares = 0
contador_impares = 0
soma_pares = 0
soma_impares = 0

Passo 3

Agora, vamos precisar de um loop que continue pedindo números para o usuário até que ele digite zero. O while é perfeito para isso. A gente vai continuar no loop enquanto o número digitado for diferente de zero.
while True:
    numero = int(input("Digite um número (0 para sair): "))
    if numero == 0:
        break
Aqui, o break serve para sair do loop quando o usuário digitar zero.

Passo 4

Dentro do loop, a gente precisa verificar se o número digitado é par ou ímpar. Para isso, usamos o operador módulo %, que retorna o resto da divisão. Se o resto da divisão do número por 2 for zero (numero % 2 == 0), então o número é par; caso contrário, é ímpar.
Se for par, aumentamos o contador_pares e adicionamos o número à soma_pares. Se for ímpar, fazemos o mesmo com os ímpares.
    if numero % 2 == 0:
        contador_pares += 1
        soma_pares += numero
    else:
        contador_impares += 1
        soma_impares += numero

Passo 5

Depois que o usuário digitar zero e sair do loop, a gente precisa calcular a média dos números pares e a divisão da soma dos pares pela soma dos ímpares. A média é simplesmente a soma dos pares dividida pela quantidade de pares:
é
E a divisão pedida é:
ãí
Vamos cuidar de não dividir por zero no segundo cálculo, caso não tenha sido digitado nenhum número ímpar.
if contador_pares > 0:
    media_pares = soma_pares / contador_pares
else:
    media_pares = 0

if soma_impares != 0:
    divisao = soma_pares / soma_impares
else:
    divisao = "Indefinido (soma dos ímpares é zero)"

Passo 6

Finalmente, vamos exibir todos os resultados para o usuário:
  • Quantidade de números pares
  • Quantidade de números ímpares
  • Média dos números pares
  • Divisão da soma dos pares pela soma dos ímpares
print(f"Quantidade de números pares: {contador_pares}")
print(f"Quantidade de números ímpares: {contador_impares}")
print(f"Média dos números pares: {media_pares}")
print(f"Divisão da soma dos pares pela soma dos ímpares: {divisao}")

Resposta

Prontinho! Com esse passo a passo, você consegue criar um programa que lê números até zero, conta quantos são pares e ímpares, calcula a média dos pares e divide a soma dos pares pela soma dos ímpares.

Exercícios relacionados

Faça um programa que calcule o valor total que um edifício garagem arrecadou em um dia de operação, no qual 200 carros utilizaram o estacionamento. O algoritmo deve ler o horário de entrada (hora e minuto) assim como o de saída. Sabe-se que o valor mínimo cobrado é de 4 reais por um período 2 horas. A partir daí, cobra-se 1 real por hora adicional.
Em um cinema, cada espectador respondeu a uma pesquisa, que perguntava a sua idade e a sua opinião em relação a um filme ( - Ótimo; B - Bom; - Regular; P - Péssimo). Faça um programa que informe a média de idade das pessoas que responderam o questionário e a porcentagem dada para cada uma das respostas. O programa deve terminar quando o usuário digitar uma idade negativa.
A prefeitura de uma cidade resolveu fazer uma pesquisa entre os seus trabalhadores. Para isso ela coletou alguns dados como idade, sexo (M ou F) e salário. Faça um programa que leia estes
dados e que escreva ao final:
  • a média salarial dos homens
  • a média salarial das mulheres
  • o maior salário encontrado entre as pessoas abaixo de 30 anos.
    Obs: O final da leitura de dados é marcado por uma idade negativa.
Faça um programa que leia um número inteiro positivo N e calcule o valor da expressão abaixo. Caso o usuário digite um valor menor ou igual a zero, o algoritmo deve escrever uma mensagem informando que a expressão não pode ser calculada.