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

 

 


Tema destacado: Usando Git para manipular el directorio de trabajo, el índice y commits (segunda parte)


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  Java
| | | |-+  Duda en numeros primos
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Duda en numeros primos  (Leído 2,809 veces)
noaptebuna

Desconectado Desconectado

Mensajes: 51


El conocimiento debe ser gratis accesible opcional


Ver Perfil
Duda en numeros primos
« en: 21 Septiembre 2015, 21:55 pm »

Buenas.
Estoy realizando un programita en el que tiene que decirme los 15 primeros numeros primos y no consigo hacerlo.
Llevo 4 días intentándolo.
Éste es uno de los muchos planteamientos que traté de darle:

Código:
package segundoejercicio;

public class SegundoEjercicio {

    public static void main(String[] args) {
        for(int x=1;x<15;x++){
            int resultado=237%x;
            if(resultado!=0){
                System.out.println(x);
            }
        }
    }
}

Sé que se puede hacer con boleanos pero preferiría no usarlo simplemente porque ya vi un código con boleanos y ni lo entendí, mientras que con un for un if etc lo entendí del todo cuando vi el código hace mucho.
Muchas gracias. :) :) :) :) :)


En línea

Los maestros suelen castigar a sus alumnos por cometer errores, cuando en realidad, el mejor maestro es el mismo error. Quieren que atiendan los alumnos, y esto es imposible si ellos no hacen lo que les apasiona. Internet da conocimientos al alumno, y el error la sabiduría, pocos profesores quieren aceptarlo, pero la realidad, es ésta.
engel lex
Moderador Global
***
Desconectado Desconectado

Mensajes: 15.514



Ver Perfil
Re: Duda en numeros primos
« Respuesta #1 en: 21 Septiembre 2015, 22:23 pm »

explica ese código, porque

Código:
int resultado=237%x;
no tiene sentido si estás sacando los primeros 15 primos


En línea

El problema con la sociedad actualmente radica en que todos creen que tienen el derecho de tener una opinión, y que esa opinión sea validada por todos, cuando lo correcto es que todos tengan derecho a una opinión, siempre y cuando esa opinión pueda ser ignorada, cuestionada, e incluso ser sujeta a burla, particularmente cuando no tiene sentido alguno.
noaptebuna

Desconectado Desconectado

Mensajes: 51


El conocimiento debe ser gratis accesible opcional


Ver Perfil
Re: Duda en numeros primos
« Respuesta #2 en: 21 Septiembre 2015, 22:25 pm »

Código:
package segundoejercicio;

public class SegundoEjercicio {

    public static void main(String[] args) {
        for(int x=1;x<15;x++){
            int resultado=x%x;
            if(resultado!=0){
                System.out.println(x);
            }
        }
    }
}

Perdón lo puse sin querer xD
Éste es el original
En línea

Los maestros suelen castigar a sus alumnos por cometer errores, cuando en realidad, el mejor maestro es el mismo error. Quieren que atiendan los alumnos, y esto es imposible si ellos no hacen lo que les apasiona. Internet da conocimientos al alumno, y el error la sabiduría, pocos profesores quieren aceptarlo, pero la realidad, es ésta.
engel lex
Moderador Global
***
Desconectado Desconectado

Mensajes: 15.514



Ver Perfil
Re: Duda en numeros primos
« Respuesta #3 en: 22 Septiembre 2015, 00:04 am »

x%x siempre será 0 XD es lo mismo que decir x/x siempre será 1 (exceptuando x=0)


tienes que hacer 2 ciclos... uno de recorrido y otro de busqueda...

yo recomiendo hacer algo así

Código
  1. int primos_conseguidos=0;
  2. int posible_primo = 1;
  3. while(primos_conseguidos < 15){
  4. posible_primo++;
  5. if(posible_primo%2==0 || posible_primo%3 == 0){
  6.  // no es primo
  7.  continue;
  8. }
  9. for(int i=5; i*i < posible_primo; i+=6){
  10.  if (n % i == 0 || n % (i + 2) == 0){
  11. // no es primo
  12.  continue;
  13. }
  14.  
  15. //si es primo
  16. primos_conseguidos ++;
  17.  
  18. imprimir (posible_primo);
  19.  
  20. }

el codigo está hecho como c, pero me imagino que no necesita muchas adaptaciones para que funcione en java
En línea

El problema con la sociedad actualmente radica en que todos creen que tienen el derecho de tener una opinión, y que esa opinión sea validada por todos, cuando lo correcto es que todos tengan derecho a una opinión, siempre y cuando esa opinión pueda ser ignorada, cuestionada, e incluso ser sujeta a burla, particularmente cuando no tiene sentido alguno.
noaptebuna

Desconectado Desconectado

Mensajes: 51


El conocimiento debe ser gratis accesible opcional


Ver Perfil
Re: Duda en numeros primos
« Respuesta #4 en: 22 Septiembre 2015, 09:03 am »

Siiii Muchas graciasss!!! ;D
En línea

Los maestros suelen castigar a sus alumnos por cometer errores, cuando en realidad, el mejor maestro es el mismo error. Quieren que atiendan los alumnos, y esto es imposible si ellos no hacen lo que les apasiona. Internet da conocimientos al alumno, y el error la sabiduría, pocos profesores quieren aceptarlo, pero la realidad, es ésta.
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines