elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Rompecabezas de Bitcoin, Medio millón USD en premios


+  Foro de elhacker.net
|-+  Programación
| |-+  Desarrollo Web
| | |-+  PHP (Moderador: #!drvy)
| | | |-+  Calcular si un nº dado es primo
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Calcular si un nº dado es primo  (Leído 4,445 veces)
luiggy2


Desconectado Desconectado

Mensajes: 439


¡ Hello word ! XD


Ver Perfil
Calcular si un nº dado es primo
« en: 10 Marzo 2009, 16:54 pm »

Mi duda es la siguiente:

¿Alguien sabe como hacer para calcular si un nº dado es primo sin necesidad de haberlos almacenado anteriormente?

He estado pensando y lo único que se me ocurre es:
1º) Divide entre 2, si resto != 0;
2º) Divide entre 3, si resto != 0;
3º) Divide entre 5, si resto != 0;
...
...


El problema es que para hacer esto, he tenido que almacenar los primos anteriormente y eso es lo que no quiero.



Saludos!
Espero sus respuestas


En línea

" Las grandes ideas suelen salir la mayoría de veces de grandes estupideces "
Novlucker
Ninja y
Colaborador
***
Desconectado Desconectado

Mensajes: 10.683

Yo que tu lo pienso dos veces


Ver Perfil
Re: Calcular si un nº dado es primo
« Respuesta #1 en: 10 Marzo 2009, 17:04 pm »

La lógica del programa?
Para que almacenar los números?

Partiendo de un número N lo divides por todos los números desde 2 hasta N-1, si en algún momento la división es 0, entonces el número no es primo y sales del bucle, si llega a N-1 y sigue "sobrando" (mod>0) entonces es primo  :P

Saludos


En línea

Contribuye con la limpieza del foro, reporta los "casos perdidos" a un MOD XD
"Hay dos cosas infinitas: el Universo y la estupidez  humana. Y de la primera no estoy muy seguro."
Albert Einstein
luiggy2


Desconectado Desconectado

Mensajes: 439


¡ Hello word ! XD


Ver Perfil
Re: Calcular si un nº dado es primo
« Respuesta #2 en: 10 Marzo 2009, 20:18 pm »

Eso ya lo había pensado. El problema es que para la segunda parte necesito saber qué nº primos hay inferiores a ese.


Saludos!
En línea

" Las grandes ideas suelen salir la mayoría de veces de grandes estupideces "
Agente Naranja


Desconectado Desconectado

Mensajes: 535


uguu~


Ver Perfil WWW
Re: Calcular si un nº dado es primo
« Respuesta #3 en: 13 Marzo 2009, 13:06 pm »

Bueno lo primero es sencillo, tal como dijo Novlucker pues irías dividiendo entre cada número menor que nuestro número, y si encuentras que ninguno lo divide, pues dirías que es primo.
Para saber los demás números primos inferiores, podrías hacer algo así como un doble bucle, por ejemplo:

Código
  1. $numero = 100;
  2.  
  3. // Bucle 1: Revisamos todos los numeros de 100 a 2
  4. for( $maximo = $numero; $maximo > 2; $maximo--){
  5.   //Bucle 2. Para cada numero, dividimos entre todos los inferiores a el.
  6.   for( $actual = $maximo; $actual > 2; $actual-- ){
  7.     if( $maximo % $actual == 0){
  8.        echo "El numero ($maximo) es un numero primo.<br />";
  9.        break;
  10.     }
  11.   }
  12. }
  13.  

Algo así es lo que se me ocurre ahora.
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
[Python] - ¿Es primo?
Scripting
Meta 9 13,539 Último mensaje 6 Diciembre 2010, 06:56 am
por [L]ord [R]NA
que juego les a dado miedo?? « 1 2 »
Juegos y Consolas
Sk9ITk5Z 14 7,472 Último mensaje 19 Octubre 2011, 04:10 am
por flacc
Factor primo más grande de un número muy largo
Programación C/C++
DickGumshoe 9 9,058 Último mensaje 5 Julio 2012, 04:01 am
por do-while
Primo.wz
WarZone
wakamole 1 2,162 Último mensaje 6 Marzo 2013, 03:17 am
por wakamole
mayor divisor primo
Programación C/C++
mariano96 2 2,071 Último mensaje 24 Febrero 2015, 02:01 am
por mariano96
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines