AD

¿Ya dominas lo básico? Un curso estructurado de VB.NET es la vía rápida para dar el salto.

Ver cursos de VB.NET en Udemy

Enlace de afiliado. No te cuesta nada extra.

🔷Lecciones de VB.NET
Lección 67 / 68

Descomponer en factores primos

En esta lección obtendrás los factores primos de un número.

Se prueba dividir por 2 mientras se pueda, luego por 3, y así sucesivamente. Cada división exacta añade ese divisor a la lista.

El código de ejemplo descompone un número y muestra los factores.

Lo que resulta poco intuitivo es que no hace falta comprobar si el divisor es primo. Cuando llegas al 4, todos los factores 2 ya se han extraído, así que ninguna potencia de 2 puede dividir lo que queda.

Fíjate en el uso de \ para dividir: es la división entera, y con / el resultado sería un decimal que no serviría para seguir dividiendo. Es el mismo par de operadores que aparece en la búsqueda binaria, y una de las cosas que más conviene tener claras en VB.

El bucle interior es el que hace el trabajo real: un número como 8 tiene el factor 2 tres veces, y hay que dividir mientras se pueda antes de pasar al siguiente candidato.

Conviene tener presente el límite: este método es rápido con números pequeños y completamente inviable con números de cientos de cifras. Esa dificultad es lo que sostiene la seguridad de RSA.

📖 Código de referencia
✍️ Tu código
Escribe tu código y pulsa «Ejecutar»

🧪 Este sitio no puede compilar ni ejecutar VB.NET directamente, así que comprueba al instante si lo que escribiste coincide con el código de referencia (la corrección ocurre por completo en tu navegador; no se envía nada a ningún servidor).

🔗 El mismo tema en otros lenguajes

Mira cómo se escribe lo mismo en otro lenguaje.

Espacio publicitario (banner)
Espacio publicitario (en el artículo)