Cantidad, Suma y Media


Descripción

Escribe un programa que lea repetidamente números hasta que el usuario introduzca “fin”. Una vez se haya introducido “fin”, muestra por pantalla:

  • la suma de los números
  • la cantidad de números
  • y la media de esos números.

Si el usuario introduce cualquier otra cosa que no sea un número, detecta su fallo usando try y except, muestra un mensaje de error y pasa al número siguiente.

Ejemplo de ejecución

Introduzca un número: 4
Introduzca un número: 5
Introduzca un número: dato erróneo
Entrada inválida
Introduzca un número: 7
Introduzca un número: fin

suma: 16
cantidad: 3
media: 5.33333333333

Solución

Mostrar solución
comando = ''
lista_numeros = []
while comando != 'fin':
  comando = input('Introduzca un número: ')

  try:
    numero = int(comando)
  except ValueError:
    if comando != 'fin':
      print('Entrada inválida')
    continue

  lista_numeros.append(numero)

suma = 0
for n in lista_numeros:
  suma += n

cantidad = len(lista_numeros)

if cantidad > 0:
  media = suma / cantidad
else:
  media = 'No disponible'

print()
print('suma: ' + str(suma))
print('cantidad: ' + str(cantidad))
print('media: ' + str(media))

Probar solución en Google Colab

Fuente del ejercicio: https://es.py4e.com/html3/05-iterations