Título: Ayuda con Programa numeros primos matriz Publicado por: Jaime1315 en 8 Febrero 2013, 04:50 am HOLA A TODOS ESPERO ALGUIEN ME PUEDA AYUDAR CON UN PROBLEMA QUE TENGO..
BUENO ESTOY REALIZANDO UNA MATRIZ DE 3X3 LA CUAL ME VA A GUARDAR SOLAMENTE NUMEROS PRIMOS... CUANDO SE INGRESE UN NUMERO DEBE VERIFICAR SI ES PRIMO O NO, SI ES PRIMO LO GUARDA EN LA MATRIZ SINO MANDA UN MESAJE DE QUE NO ES PRIMO Y VUELVE A PEDIR EL NUMERO MI CODIGO ES EL SIGUIENTE: MUCHAS GRACIAS DE ANTE MANO SALUDOS :D Código
Título: Re: Ayuda con Programa numeros primos matriz Publicado por: engel lex en 8 Febrero 2013, 04:58 am dijiste lo que tienes y quieres pero no cual es el problema :s
Título: Re: Ayuda con Programa numeros primos matriz Publicado por: Jaime1315 en 8 Febrero 2013, 05:05 am dijiste lo que tienes y quieres pero no cual es el problema :s A ok pasa que cuando ingreso solo numeros primos no hay problema, los guarda y me imprime bien la matriz.... pero si pongo un numero par me manda que nos es primo todo bien hasta ahora pero despues cuando ingreso otro numero no importa si es primo opar se cicla pidiendo que ingrese numeros nunca termina de pedir :P Título: Re: Ayuda con Programa numeros primos matriz Publicado por: engel lex en 8 Febrero 2013, 07:01 am no soy experto en java pero veo lo siguiente....
Código
no deberias usar "&" sino "&&" ya que en java hasta donde recuerdo un & solo hace una operación en binario (por ejemplo 123 & 39 da 35)... en cambio && chequea el resultado y devuelve true o false... puede no se el factor pero nunca está de más hacelo bien porque ese "&" puede retornar valores inesperados (como null pointer exeption y locuras así...) puedes poner algo como Código
y ve si están avanzando apropiadamente f y cl por otro lado este tipo de operaciones está bien, pero recomiendo colocarle sus llaves "{ }" para asegurarte que no te equivocas en el control de flujo Código
por ultimo creo que este es tu error x<num Código
ya que si ingresaste 5, el revisará del 1 al 4 (x < 5) asi que en un numero primo, c solo será 1 y nunca 2 lo ultimo que puedes usar es... para saber si un numero es primo, solo debes probar con los números enteros menores a su raíz cuadrada (si es entero e igual, entonces obviamente no es primo) y no es necesario contar el 1... prueba esos cambios y avisas... yo mañana reviso es tarde para mi D: (1:30am) Título: Re: Ayuda con Programa numeros primos matriz Publicado por: Mitsu en 9 Febrero 2013, 01:54 am Hola,
Soy principiante en Java también, pero tu código no hacía lo que querías. Tu forma de saber si un numero era primo o no era incorrecta. Aquí te dejo tu código un poco retocado y comentado, trata de comentar lo mas posible tu codigo, asi cualquiera entendera exactamente lo que quieres hacer. Código
Título: Re: Ayuda con Programa numeros primos matriz Publicado por: Jaime1315 en 9 Febrero 2013, 02:13 am Hola nuevamente a todos muchas gracias por los comentarios recibidos, ayer pude resolver el problema de manera parecida en que lo resolvió Randomized muchas gracias por el comentario y pues en un ratito mas les subo el programa como tal para que puedan ver como lo resolvi y casi de manera similar al de Randomized :D y mil gracias por las respuestas :P
Título: Re: Ayuda con Programa numeros primos matriz Publicado por: Jaime1315 en 9 Febrero 2013, 05:08 am Citar package numprim; import java.util.*; /** * * @author jimmybibi */ public class operacions { int matriz[][]=new int[3][3]; int c,num,f,cl; Scanner dato = new Scanner(System.in); void sbprimo(){ f=0; cl=0; do{ System.out.println("Ingresa un numero primo"); num=dato.nextInt(); res(); if(res()==true){ matriz[f][cl]=num; cl++; c=0; }else{ System.out.println("no es primo"); c=0; } if(cl>2){ cl=0; f++; } }while((f<3)&(cl<3)); } public boolean res(){ for(int x=1;x<num;x++) { if(num%x==0) { c++; } } if(c==2){ return true; } else{ return false; } } void muestram(){ for(f=0;f<3;f++){ for(cl=0;cl<3;cl++){ System.out.print("["+matriz[f][cl]+"]"); } System.out.println(""); } } } ------------------------------------------------------------------------ package numprim; /** * * @author jimmybibi */ public class Numprim { /** * @param args the command line arguments */ public static void main(String[] args) { operacions mm = new operacions(); System.out.println("Programa que almacena numeros primos"); mm.sbprimo(); mm.muestram(); } } ] Título: Re: Ayuda con Programa numeros primos matriz Publicado por: Mitsu en 9 Febrero 2013, 13:58 pm Se ve bien. Podrías poner la salida del algoritmo? para ver su funcionamiento :)
Pd: Coloca los codigos entre code == java TU CODIGO /code. code == java va encerrado entre [] y /code tambien. esto: Código
Se simplifica a: Código
Saludos. |