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

 

 


Tema destacado: Únete al Grupo Steam elhacker.NET


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  Ejercicios
| | | |-+  Un Problemilla con Un Ejercicio(Java)
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Un Problemilla con Un Ejercicio(Java)  (Leído 3,631 veces)
YamiAlx

Desconectado Desconectado

Mensajes: 7



Ver Perfil
Un Problemilla con Un Ejercicio(Java)
« en: 25 Agosto 2010, 18:18 pm »

Bueno estoy generando este para calcular el primo menor en java , que yo ingrese el numero 103 y que el numero primo que me salga en pantalla sea el primo menor de este.

Ej: 10 - Primo Menor : 7

Hasta ahora llevo este codigo, pero no se si tenga que hacer un ciclo for independiente para ir restando el numero a entrada, medio realize una interfaz pequeña, alguna sugerencia ?
Código
  1. import java.awt.*;
  2. import java.awt.event.*;
  3. import javax.swing.*;
  4. public class Main extends JFrame
  5. {
  6. private JLabel total, primo;
  7. private JTextField numero;
  8. private JButton calcular;
  9. //constructor sin argumentos
  10. public Main()
  11. {
  12. crearInterfazdeUsuario();
  13. }
  14. //
  15. public void crearInterfazdeUsuario()
  16. {
  17. Container contentPane = getContentPane();
  18. contentPane.setLayout( null );
  19. primo = new JLabel();
  20. primo.setText("Numero:");
  21. primo.setBounds(05, 25, 91, 21);
  22. contentPane.add(primo);
  23. numero = new JTextField();
  24. numero.setBounds(62, 28, 70, 20);
  25. numero.setHorizontalAlignment(
  26. JTextField.RIGHT);
  27. contentPane.add(numero);
  28. total = new JLabel();
  29. total.setBounds( 45, 115, 500, 21 );
  30. contentPane.add(total);
  31. calcular = new JButton();
  32. calcular.setText( "Calcular" );
  33. calcular.setBounds( 45, 75, 94, 24 );
  34. contentPane.add( calcular );
  35. calcular.addActionListener(
  36. new ActionListener() //
  37. {
  38. public void actionPerformed( ActionEvent event )
  39. {
  40. calcularJButtonActionPerformed( event );
  41. }
  42. }
  43. ); //
  44. setTitle( "Primos ?" ); //
  45. setSize( 200, 200 ); //
  46. setVisible( true ); //
  47. } //
  48.  
  49.  
  50. private void calcularJButtonActionPerformed( ActionEvent event )
  51. {
  52. try
  53. {
  54. int i = Integer.parseInt(numero.getText());
  55. int c;
  56. String result = "";
  57. for(c = 2; c < i ; c++)
  58. {
  59. if( i % c == 0)
  60. {
  61.    result = i + " No es primo.";
  62.    i--;
  63.    if ( c == i/2)
  64.    {
  65.        result = i + " Primo Menor.";
  66.    }
  67.  
  68. //break;
  69. }
  70.  
  71. if(c == i/2)
  72. {
  73. result = i + " Es primo.";
  74. i--;
  75.    if ( c == i/2)
  76.    {
  77.        result = i + " Primo Menor.";
  78.    }
  79.  
  80. //break;
  81. }
  82. }
  83. total.setText(result);
  84. }
  85. catch(Exception e)
  86. {
  87. JOptionPane.showMessageDialog(null, "Ingrese un valor numerico", "Valor Numerico No encontrado", JOptionPane.ERROR_MESSAGE);
  88. }
  89. }
  90. public static void main( String[] args )
  91. {
  92. Main application = new Main();
  93. application.setDefaultCloseOperation( JFrame.EXIT_ON_CLOSE );
  94. }
  95. }

Solo deje los de si es primo o no es primo para determinar si si entraba al ciclo, cualquier sugerencia es bienvenida muchas gracias de antemano, apenas estoy comenzando con esto disculpen mi nivel noob ._.

Pd: Espero que no haya cometido algun error ? en lo referente al post por que en el codigo xD si que debe haber errores


« Última modificación: 25 Agosto 2010, 18:21 pm por YamiAlx » En línea

Leyer


Desconectado Desconectado

Mensajes: 786


leyer@elhacker.net


Ver Perfil WWW
Re: Un Problemilla con Un Ejercicio(Java)
« Respuesta #1 en: 25 Agosto 2010, 23:07 pm »

q tal asi

Código
  1. private void calcularJButtonActionPerformed( ActionEvent event ){
  2. try{
  3. int i = Integer.parseInt(numero.getText())-2;
  4. for(int j=i;j>0;j--){
  5. if(!(j%2==0)){
  6. total.setText("Primo Menor: "+j);
  7. break;
  8. }
  9. }
  10. }
  11. catch(Exception e){
  12. JOptionPane.showMessageDialog(null, "Ingrese un valor numerico", "Valor Numerico No encontrado", JOptionPane.ERROR_MESSAGE);
  13. }
  14. }


En línea

YamiAlx

Desconectado Desconectado

Mensajes: 7



Ver Perfil
Re: Un Problemilla con Un Ejercicio(Java)
« Respuesta #2 en: 25 Agosto 2010, 23:44 pm »

 ;D Muchas Gracias , solo le arregle una linea nueva para cuando sea par saque el menor primo de ese numero, aunque es algo medio inventado pero muchas gracias.. dejo el codigo final.
Código
  1. private void calcularJButtonActionPerformed( ActionEvent event ){
  2. try{
  3. int i = Integer.parseInt(numero.getText())-2;
  4. for(int j=i;j>0;j--){
  5. if(!(j%2==0)){
  6. total.setText("Primo Menor: "+j);
  7. break;
  8. }
  9.  
  10.                if( j % 2 == 0)
  11.                {
  12.                    j++;
  13.                    total.setText("Primo Menor del Par: "+ j);
  14. break;
  15.                }
  16. }
  17. }
  18. catch(Exception e){
  19. JOptionPane.showMessageDialog(null, "Ingrese un valor numerico", "Valor Numerico No encontrado", JOptionPane.ERROR_MESSAGE);
  20. }
  21.  

Intentare ser mas activo xD
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
una ayuda en un ejercicio en java.
Java
XpandyX 2 3,580 Último mensaje 24 Enero 2011, 00:10 am
por XpandyX
Ejercicio java en consola
Java
shei 2 4,663 Último mensaje 10 Mayo 2012, 16:08 pm
por #Hianpaz
ejercicio en java
Java
hairam 3 3,236 Último mensaje 25 Junio 2012, 20:17 pm
por konarr
Ejercicio con while JAVA problema :S
Java
Cazs03 4 2,953 Último mensaje 15 Diciembre 2012, 10:19 am
por Cazs03
Problemilla bucle de JAVA
Programación General
dennis094 4 3,231 Último mensaje 9 Marzo 2013, 01:41 am
por dennis094
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines