import turtle # --------------------------- # Función: dibuja un polígono # --------------------------- def poligono(color, tamaño, lados): """ Dibuja un polígono regular con Turtle. - color: string (ej. "red", "blue", "#ff8800") - tamaño: entero (longitud del lado, en píxeles) - lados: entero (mínimo 3) """ # Validación mínima interna (por si llaman mal a la función) if lados < 3 or tamaño <= 0: print("Parámetros inválidos: lados >= 3 y tamaño > 0.") return # Intentar aplicar el color; si falla, usar negro try: turtle.pencolor(color) except turtle.TurtleGraphicsError: print(f"Color '{color}' no reconocido. Se usará 'black'.") turtle.pencolor("black") angulo = 360 / lados for _ in range(lados): turtle.forward(tamaño) turtle.right(angulo) # --------------------------- # Configuración inicial Turtle # --------------------------- turtle.speed(0) # Velocidad de dibujo turtle.bgcolor("black") # Fondo turtle.pensize(2) # Grosor de línea print("Actividad: Polígono con validación (2 pruebas)") # Haremos 2 combinaciones como pide la consigna for intento in range(1, 3): print(f"\n--- PRUEBA {intento} ---") # Validar número de lados (entero >= 3) while True: try: lados = int(input("Ingrese número de lados (mínimo 3): ")) if lados >= 3: break else: print("Error: el número de lados debe ser 3 o más.") except ValueError: print("Error: ingrese un número entero.") # Validar tamaño (entero >= 20 recomendado) while True: try: tamaño = int(input("Ingrese tamaño del lado en píxeles (mínimo 20 recomendado): ")) if tamaño >= 20: break else: print("Error: el tamaño debe ser 20 o más para que se vea bien.") except ValueError: print("Error: ingrese un número entero.") # Validar color (no vacío). Acepta nombres CSS o hex (ej. #ff8800) while True: color = input("Ingrese color (ej. 'red', 'blue' o '#ff8800'): ").strip() if color: break else: print("Error: el color no puede estar vacío.") # Posicionar cada figura un poco separada para que no se superpongan turtle.penup() turtle.goto(-200 + (intento - 1) * 200, 0) # mueve a la izquierda/derecha según intento turtle.pendown() # Llamada a la función con los valores validados poligono(color, tamaño, lados) print("\nDibujo completado. Cierre la ventana para finalizar.") turtle.done() ######### Qué hace este script Pide dos veces (dos pruebas) los tres datos: lados, tamaño y color. Valida que: lados sea entero y >= 3. tamaño sea entero y >= 20 (recomendado para que se vea). color no esté vacío (si el color no existe, la función usa negro y avisa). Dibuja cada polígono en una posición distinta para que se vean ambos. Finaliza con turtle.done() para mantener la ventana abierta.