P2.3 · Captura de excepciones¶
Salvo que se diga lo contrario, el objetivo es que ninguna excepción llegue al programa principal y lo aborte. Controla cualquier dato incorrecto que pueda introducir el usuario.
Ejercicio 2.3.1¶
Pide la edad y muestra todos los años cumplidos (de 1 hasta su edad). Controla que lo escrito sea un número.
Ejercicio 2.3.2¶
Pide un entero positivo y muestra los impares de 1 hasta ese número, separados por comas. Controla las entradas incorrectas.
Ejercicio 2.3.3¶
Pide un entero positivo y muestra la cuenta atrás hasta cero. Repite la petición hasta que el número sea correcto.
Ejercicio 2.3.4¶
Pide un entero. Si la entrada no es correcta, muestra La entrada no es correcta y vuelve a lanzar la excepción capturada.
Solución modelo (bloqueada)
🔒 La solución completa está bloqueada. Esto es solo un ejemplo de cómo empieza:
try:
n = int(input("Escribe un entero: "))
print(f"Has escrito {n}")
except ValueError:
print("La entrada no es correcta")
# ... (resto de la solución bloqueado)Ejercicio 2.3.5¶
Pide una contraseña y, si no coincide con la guardada, lanza una excepción propia con el mensaje Incorrect Password!!.
Solución modelo (bloqueada)
🔒 La solución completa está bloqueada. Esto es solo un ejemplo de cómo empieza:
class ContrasenaIncorrecta(Exception):
pass
def comprobar(intento):
guardada = "secreto"
if intento != guardada:
# ... (resto de la solución bloqueado)