teslariu

funciones try/except

Jan 16th, 2021
180
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 1.84 KB | None | 0 0
  1. #!/usr/bin/env python
  2. # -*- coding: utf-8 -*-
  3. #
  4. #!/usr/bin/env python
  5. # -*- coding: utf-8 -*-
  6. #
  7. #!/usr/bin/env python
  8. # -*- coding: utf-8 -*-
  9. """
  10. Crear un programa que solicite dos números en consola e imprima el
  11. resultado de las cuatro operaciones aritméticas aplicadas sobre ellos.
  12.  
  13. Por ejemplo:
  14. >>> Escribe un número: 7
  15. >>> Escribe otro número: 5
  16. >>> a + b: 12
  17. >>> a - b: 2
  18. >>> a * b: 35
  19. >>> a / b: 1.4
  20.  
  21. Teniendo en cuenta lo siguiente:
  22. ● Si el usuario ingresa cualquier otra cosa que no sea un número,
  23. debe volver a preguntar, en ambos casos.
  24. ● Contemplar que el segundo número puede ser cero y, por ende, llegado
  25. el momento de la división el programa debe imprimir “No se puede dividir
  26. por cero”.
  27. ● Como restricción, no se pueden usar condicionales (if)."""
  28.  
  29. def ingresar_datos():
  30.     lista = []
  31.     while len(lista) < 2:
  32.         try:
  33.             numero = float(input("Ingrese un número: "))
  34.         except ValueError:
  35.             print(f"Debe ingresar un numero.")
  36.         else:
  37.             lista.append(numero)
  38.     return lista
  39.    
  40. def suma(a,b):
  41.     return a + b
  42.  
  43. def resta(a,b):
  44.     return a - b
  45.    
  46. def cociente(a,b):
  47.     if b:
  48.         return a/b
  49.     else:
  50.         raise ZeroDivisionError
  51.  
  52. def producto(a,b):
  53.     return a * b
  54.    
  55.        
  56.  
  57.  
  58. print("Programa que calcula +,-,*,/ de dos numeros")
  59. print("-------------------------------------------")
  60.  
  61. while True:
  62.     a,b = ingresar_datos()
  63.          
  64.     print(f"a + b: {suma(a,b)}")
  65.     print(f"a - b: {resta(a,b)}")
  66.     print(f"a * b: {producto(a,b)}")
  67.     try:
  68.         print(f"a / b: {cociente(a,b)}")
  69.     except ZeroDivisionError:
  70.         print("No se puede dividir por cero")
  71.    
  72.     opcion = input("Presione cualquier tecla ('X' para salir): ")
  73.     if opcion.casefold() == "x":
  74.         print("Adios...")
  75.         break
Advertisement
Add Comment
Please, Sign In to add comment