¿Por qué te enseñan a escribir un programa para encontrar los números primos?
Simplemente como un problema de práctica y para aprender que un problema puede resolverse usando diferentes algoritmos y su efecto en el tiempo utilizado por su algoritmo.
¿Dónde se usan los números primos?
Uno de los usos más importantes de los números primos que se me ocurre es
Criptografía de clave pública
Varios algoritmos de criptografía de clave pública, como RSA y el intercambio de claves Diffie-Hellman, se basan en números primos grandes (muy grandes) (por ejemplo, los primos de 512 bits se usan con frecuencia para RSA y los primos de 1024 bits son típicos para Diffie-Hellman. ) RSA se basa en el supuesto de que es mucho más fácil (es decir, más eficiente) realizar la multiplicación de dos números (grandes) x e y que calcular x e y (coprimo supuesto) si solo se conoce el producto xy. El intercambio de claves Diffie-Hellman se basa en el hecho de que existen algoritmos eficientes para la exponenciación modular, mientras que la operación inversa del logaritmo discreto se considera un problema difícil.
En resumen, si puede ver un número muy grande y decir rápidamente cuáles son sus factores primos, entonces será un hombre / mujer muy rico :).
- ¿Cuál sería la forma más eficiente de verificar si un número dado es un factorial de algún número o no?
- ¿Quiénes son las estrellas en ascenso en la informática teórica?
- ¿Quién es el Alan Turing de nuestro tiempo?
- ¿Es necesaria una buena comprensión matemática de los algoritmos de ML para crear software utilizando partes de él?
- Binario (sistema de números): ¿Qué sucede si un byte tiene 16 bits en lugar de 8?
Puedes leer más sobre esto aquí
Criptografía de clave pública