Tarea "Divisor primo mínimo"
📁 python, Error: Análisis de errores (SyntaxError, TypeError, etc.), Desarrollo de bots (Telegram, Discord)
Acabo de empezar a estudiar Python en la plataforma Sirius. Pude resolver todas las demás tareas del tema «while», excepto una que no me permite pasar a los siguientes temas. La tarea «Divisor primo mínimo de un número».
Condición: Dado un número entero no menor que 2. Imprime su divisor primo más pequeño. No se pueden usar bibliotecas adicionales (math, etc.)!
Datos de entrada: Se ingresa un número entero positivo N <= 2*10 a la 9ª potencia.
Datos de salida: Imprime la respuesta a la tarea.
Intenté resolverlo escribiendo código con while, pero mi respuesta no es aceptada debido a que el tiempo de ejecución del programa es demasiado largo. Recomiendan organizar un bucle que recorra los divisores hasta la raíz del número N: while i*i <= N:, pero no puedo entender cómo hacerlo.
Mi código en Python (da error «El programa se ejecutó demasiado tiempo y fue interrumpido» o «El programa da error durante el proceso de»)