
Construye un programa que valida edades y notas, prueba los límites 17/18 y 59/60, y corrige una comparación defectuosa en 60 minutos.
dia-02-validaciones/ con cuatro evidencias:validaciones.py, un programa que pide una edad y una nota;predicciones.md, con el resultado esperado para cuatro pares de prueba;salida.txt, con las cuatro ejecuciones reales;prueba_limite.py, una copia donde provocarás y corregirás un error lógico.predicciones.md y responde sin ejecutar código:input() y por qué necesitas int() antes de comparar?18, ¿qué debería ocurrir con 17 y con 18?60, ¿qué debería ocurrir con 59 y con 60?(edad, nota):(-1, 59)(17, 60)(18, -1)(121, 101)0 a 120 para la edad y de 0 a 100 para la nota. Por tanto, una edad negativa o mayor que 120 es inválida; una nota negativa o mayor que 100 también lo es. Dentro de esos rangos, 18 separa menor y mayor de edad, mientras que 60 separa reprobada y aprobada.1:40:06 · If Statements y continúa hasta 2:00:06; dentro de ese tramo, If Statements & Comparisons comienza en 1:54:07. Detente antes de 2:00:37 · Building a better Calculator: hoy necesitas condiciones y comparaciones, no otro proyecto. 1predicciones.md:elif, mientras que la rama else es opcional. En una cadena if–elif–else, el orden decide qué condición se evalúa primero y qué bloque termina ejecutándose. 2dia-02-validaciones/validaciones.py:edad = int(input("Ingresa tu edad: "))
nota = int(input("Ingresa tu nota: "))
if edad < 0:
print("Edad inválida")
elif edad > 120:
print("Edad inválida")
elif edad < 18:
print("Menor de edad")
else:
print("Mayor de edad")
if nota < 0:
print("Nota inválida")
elif nota > 100:
print("Nota inválida")
elif nota < 60:
print("Reprobada")
else:
print("Aprobada")else final ya no necesita otra comparación porque las ramas anteriores descartaron los demás casos.predicciones.md el resultado esperado:(-1, 59) debe producir Edad inválida y Reprobada.(17, 60) debe producir Menor de edad y Aprobada.(18, -1) debe producir Mayor de edad y Nota inválida.(121, 101) debe producir Edad inválida y Nota inválida.validaciones.py cuatro veces, una por cada par. Copia en salida.txt las dos entradas y las dos líneas de resultado de cada ejecución. Separa las pruebas con una línea en blanco y marca si la salida coincidió con tu predicción. Estas cuatro ejecuciones comprueban valores inválidos por ambos extremos y, a la vez, los cortes 17/18 y 59/60.prueba_limite.py. En la copia, cambia solo esta línea:elif nota < 60:elif nota <= 60:prueba_limite.py con 17 y 60. La nota quedará como Reprobada: 60 satisface nota <= 60, así que Python entra en esa rama y ya no llega al else. Guarda esa salida bajo ERROR CONTROLADO en predicciones.md. Después restaura nota < 60, repite el mismo caso y comprueba que vuelve a mostrar Aprobada.predicciones.md:17/18 y entre 59/60.<= 60 clasificaba mal la nota exacta de 60.prueba_limite.py con la comparación correcta. La evidencia útil no es solo que el programa funcione, sino que puedas señalar qué entrada fallaba, qué condición la capturaba y qué cambió después de la corrección.dia-02-validaciones/ con los cuatro archivos pedidos.validaciones.py pide y convierte una edad y una nota.0 a 120 y la nota de 0 a 100.(-1, 59), (17, 60), (18, -1) y (121, 101).60 con nota <= 60 en la copia.nota < 60 y verificaste que 60 queda aprobada.docs.python.org
This story was produced automatically by a channel. One sentence is all it takes for Neodrop to keep producing for you.