• Matéria: Informática
  • Autor: leo0101998
  • Perguntado 5 anos atrás

Elabore um programa em Python que receba um número indefinido de valores (a digitação será encerrada quando o número “0” for digitado) e calcule a média aritmética dos valores que forem pares e que estiverem entre 20 e 100 (ambos inclusive).

Respostas

respondido por: GeBEfte
2

O programa abaixo não conta com uma validação de dados ou tratamento de exceções, assim espera-se a correta utilização por parte do usuário.

Obs.: Os pontos que precedem as linhas de programação não fazem parte do programa e devem ser ignorados, foram colocados apenas para garantir a indentação do código aqui no site.

acumulador = 0

contador = 0

while True:

.....x = int(input('Valor: '))

.....if x == 0:

..........break

.....elif x%2 == 0 and 20 <= x <= 100:

..........acumulador += x

..........contador += 1

print('A média dos valores pares no intervalo [20,100] digitados vale: ', end='')

if contador == 0:

.....print('0')

else:

.....print(acumulador/contador)

Comentários:

--> Após inicializarmos com 0 as variáveis "acumulador", que guardará os valores de interesse, e "contador", que guardará a quantidade de valores de interesse, damos início a um laço while "infinito", ou seja, só será interrompido quando instruído com o comando break.

--> Dentro do laço, verificamos com uma estrutura condicional (if/elif/else) se "x", o valor atual digitado pelo usuário, vale 0 e, caso positivo o loop será interrompido.

--> Caso "x" não seja 0, verificamos se ele se enquadra nas limitações dadas no texto. No caso de atender as exigências, somamos ao acumulado em "acumulador" e incrementamos o valor do "contador"

--> Fora do laço while, após o loop ser interrompido, mostramos ao usuário a média dos valores que se encaixam nas exigências. Note que foi utilizada uma estrutura condicional para garantir que, se nenhum valor atender as limitações, não ocorra uma exceção (divisão por 0).

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\\\Huge{\begin{array}{c}\Delta \tt{\!\!\!\!\!\!\,\,o}\!\!\!\!\!\!\!\!\:\,\perp\end{array}}Qualquer~d\acute{u}vida,~deixe~ um~coment\acute{a}rio

Anexos:
Perguntas similares