Foros Python

Versión completa: FACTORIZACION DE UN NÚMERO (GOTO?)
Actualmente estas viendo una versión simplificada de nuestro contenido. Ver la versión completa con el formato correcto.
Hola a la comunidad.
Soy nuevo en programación y también en PYTHON.
Tengo que resolver un ejercicio de FACTORIZACION DE NUMEROS.
Hice un FLOW CHART del mismo( archivo adjunt).
Hice unas purebas pero realmente no funcionaron.
Tengo en la cabeza usar GOTO..Pero en PYTHON no exciste de base.
Busqué en GOOGLE hay varios módulos pero la verdad no funcionan.
Me podrían ayudar a resolverlo sin usar GOTO?.
Muchas gracias!
Hola.

Estuve pensando un poco el diagrama de flujo que adjuntaste. Creo que a lo último debería chequearse si el cociente es distinto de cero, en lugar de igual a cero. Como sea, la siguiente implementación está insipirada en tu diagrama:

Código:
numero = int(input("Ingresa un número: "))
numeros_primos = iter([2, 3, 5, 7, 11, 13, 17, 19, 23])
numero_primo = next(numeros_primos)
cociente = None

print(f"Factores de {numero}:")

while cociente != 1:
    if numero % numero_primo != 0:
        numero_primo = next(numeros_primos)
        continue
    cociente = numero / numero_primo
    numero = cociente
    print(numero_primo)

Como te había comentado, el GOTO de C o el JUMP de assembly lo podés replicar en Python y otros lenguajes de alto nivel con un bucle while. La clave de este código es que todo lo que está dentro del while se repite mientras el cociente sea distinto de 1. El "continue" hace que el código vuelva a empezar desde la primera línea del bucle. El resto me parece que es bastante claro.

Comentame qué te parece.

Saludos