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

 

 


Tema destacado: Los 10 CVE más críticos (peligrosos) de 2020


  Mostrar Temas
Páginas: [1]
1  Programación / Java / ayuda con un panel en: 11 Junio 2014, 02:19 am
buenas quiero hacer mis practicas mas vistosas. asi que en vez de usar el tipico panel de JOptionPane.showInputDialog(null, "Introduce el primer coeficiente:")

Quiero hacer un panel mas vistoso.

el poblema es que aun no lo controlo bien la programacion se me escapan algunos detalles y me dan error.

Codigo segun lo tengo echo.

Código:
public class tema2 {
    public static void main(String[] args) {
//ejercicio de concepto básicos

JOptionPane.showMessageDialog(null, "Descripción: Pedir los coeficientes de una ecuación se 2º grado, y muestre sus soluciones reales.\nsi no existen, debe indicarlo.");
                /* lo tengo desabilitado porque no me funciona la frame que quiero se que cuando meta todo lo que quiero solo tiene que aparecer lo del comentario.
                frame1 obj = new frame1 ();
                obj.setVisible(true);
                obj.setLocationRelativeTo(null);
                */

                double a=Double.parseDouble(JOptionPane.showInputDialog(null, "Introduce el primer coeficiente:"));
                double b=Double.parseDouble(JOptionPane.showInputDialog(null, "Introduce el segundo coeficiente:"));
                double c=Double.parseDouble(JOptionPane.showInputDialog(null, "Introduce el tercero coeficiente:"));
                double d = b * b - 4 * a * c ;
                if (d<0){
                    JOptionPane.showMessageDialog(null, "No existe soluciones Reales");
                }else{
                double x1 = (-b+Math.sqrt(d))/(2*a);
                double x2 = (-b-Math.sqrt(d))/(2*a);
                JOptionPane.showMessageDialog(null, "Los resultados de x1 y x2 es:\n\nResultado x1= "+x1+"\nresultado x2= "+x2);
                }

veamos la explicacion, quiero que en vez de salir ventanitas pidiendome los datos y despues que me de los mensajes de los resultados. quiero que en esta ventana me haga todo.

Código:
public class frame1 extends javax.swing.JFrame {

    private double a;
    private double c;
    private double b;
    private double x1;
    private double x2;
    private double d;
    private boolean correcto;

    public frame1() {
        initComponents();
    }

    @SuppressWarnings("unchecked")
    // <editor-fold defaultstate="collapsed" desc="Generated Code">                          
    private void initComponents() {

        jLabel1 = new javax.swing.JLabel();
        jLabel2 = new javax.swing.JLabel();
        jLabel3 = new javax.swing.JLabel();
        jLabel4 = new javax.swing.JLabel();
        jLabel5 = new javax.swing.JLabel();
        jLabel6 = new javax.swing.JLabel();
        jTextField1 = new javax.swing.JTextField();
        jTextField2 = new javax.swing.JTextField();
        jTextField3 = new javax.swing.JTextField();
        jTextField4 = new javax.swing.JTextField();
        jTextField5 = new javax.swing.JTextField();
        jTextField6 = new javax.swing.JTextField();
        jButton1 = new javax.swing.JButton();
        jButton2 = new javax.swing.JButton();

        setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
        setTitle("ejercicio1");

        jLabel1.setText("Introduzca primer coeficiente:");

        jLabel2.setText("Introduzca segundo coeficiente:");

        jLabel3.setText("Introduzca tercero coeficiente:");

        jLabel4.setText("Soluciones Reales:");

        jLabel5.setText("Soluciono:");

        jLabel6.setText("Soluciono:");

        jTextField1.setEditable(false);
        jTextField1.setBackground(new java.awt.Color(255, 204, 255));
        jTextField1.setText("0");
        jTextField1.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jTextField1ActionPerformed(evt);
            }
        });

        jTextField2.setEditable(false);
        jTextField2.setBackground(new java.awt.Color(255, 204, 255));
        jTextField2.setText("0");
        jTextField2.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jTextField2ActionPerformed(evt);
            }
        });

        jTextField3.setEditable(false);
        jTextField3.setBackground(new java.awt.Color(204, 255, 204));
        jTextField3.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jTextField3ActionPerformed(evt);
            }
        });

        jTextField4.setText("0");
        jTextField4.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jTextField4ActionPerformed(evt);
            }
        });

        jTextField5.setText("0");
        jTextField5.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jTextField5ActionPerformed(evt);
            }
        });

        jTextField6.setText("0");
        jTextField6.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jTextField6ActionPerformed(evt);
            }
        });

        jButton1.setText("Comprobar");
        jButton1.addMouseListener(new java.awt.event.MouseAdapter() {
            public void mouseClicked(java.awt.event.MouseEvent evt) {
                jButton1MouseClicked(evt);
            }
        });

        jButton2.setText("Volver a los ejercicios");
        jButton2.addMouseListener(new java.awt.event.MouseAdapter() {
            public void mouseClicked(java.awt.event.MouseEvent evt) {
                jButton2MouseClicked(evt);
            }
        });

        javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
        getContentPane().setLayout(layout);
        layout.setHorizontalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(layout.createSequentialGroup()
                .addContainerGap()
                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addComponent(jButton1, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                    .addGroup(layout.createSequentialGroup()
                        .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addGroup(layout.createSequentialGroup()
                                .addComponent(jLabel4)
                                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                .addComponent(jTextField3, javax.swing.GroupLayout.PREFERRED_SIZE, 124, javax.swing.GroupLayout.PREFERRED_SIZE))
                            .addGroup(layout.createSequentialGroup()
                                .addComponent(jLabel5)
                                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                .addComponent(jTextField2, javax.swing.GroupLayout.PREFERRED_SIZE, 124, javax.swing.GroupLayout.PREFERRED_SIZE))
                            .addGroup(layout.createSequentialGroup()
                                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                                    .addComponent(jLabel2)
                                    .addComponent(jLabel3)
                                    .addComponent(jLabel1))
                                .addGap(29, 29, 29)
                                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING, false)
                                    .addComponent(jTextField5, javax.swing.GroupLayout.Alignment.LEADING, javax.swing.GroupLayout.DEFAULT_SIZE, 66, Short.MAX_VALUE)
                                    .addComponent(jTextField4, javax.swing.GroupLayout.Alignment.LEADING)
                                    .addComponent(jTextField6)))
                            .addGroup(layout.createSequentialGroup()
                                .addComponent(jLabel6)
                                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                                    .addComponent(jButton2)
                                    .addComponent(jTextField1, javax.swing.GroupLayout.PREFERRED_SIZE, 124, javax.swing.GroupLayout.PREFERRED_SIZE))))
                        .addGap(0, 0, Short.MAX_VALUE)))
                .addContainerGap())
        );
        layout.setVerticalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(layout.createSequentialGroup()
                .addContainerGap()
                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(jLabel1)
                    .addComponent(jTextField4, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                .addGap(18, 18, 18)
                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(jLabel2)
                    .addComponent(jTextField5, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                .addGap(18, 18, 18)
                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(jLabel3)
                    .addComponent(jTextField6, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addComponent(jButton1, javax.swing.GroupLayout.PREFERRED_SIZE, 47, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(jLabel4)
                    .addComponent(jTextField3, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                .addGap(46, 46, 46)
                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(jLabel5)
                    .addComponent(jTextField2, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                .addGap(18, 18, 18)
                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(jLabel6)
                    .addComponent(jTextField1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 18, Short.MAX_VALUE)
                .addComponent(jButton2)
                .addContainerGap())
        );

        pack();
    }// </editor-fold>                        

    private void jTextField1ActionPerformed(java.awt.event.ActionEvent evt) {                                            
            
    }                                          

    private void jTextField2ActionPerformed(java.awt.event.ActionEvent evt) {                                            
        
    }                                          

    private void jTextField3ActionPerformed(java.awt.event.ActionEvent evt) {                                            
        
    }                                          

    private void jTextField4ActionPerformed(java.awt.event.ActionEvent evt) {                                            
        a="";
    }                                          

    private void jTextField5ActionPerformed(java.awt.event.ActionEvent evt) {                                            
        b="";
    }                                          

    private void jTextField6ActionPerformed(java.awt.event.ActionEvent evt) {                                            
        c="";
    }                                          

    private void jButton1MouseClicked(java.awt.event.MouseEvent evt) {                                      
        d = b * b - 4 * a * c ;
        correcto = d < 0 ;
        x1 = (-b+Math.sqrt(d))/(2*a);
        x2 = (-b-Math.sqrt(d))/(2*a);
                
    }                                    

    private void jButton2MouseClicked(java.awt.event.MouseEvent evt) {                                      
        
    }                                    

    /**
     * @param args the command line arguments
     */
    public static void main(String args[]) {
        /* Set the Nimbus look and feel */
        //<editor-fold defaultstate="collapsed" desc=" Look and feel setting code (optional) ">
        /* If Nimbus (introduced in Java SE 6) is not available, stay with the default look and feel.
         * For details see http://download.oracle.com/javase/tutorial/uiswing/lookandfeel/plaf.html
         */
        try {
            for (javax.swing.UIManager.LookAndFeelInfo info : javax.swing.UIManager.getInstalledLookAndFeels()) {
                if ("Nimbus".equals(info.getName())) {
                    javax.swing.UIManager.setLookAndFeel(info.getClassName());
                    break;
                }
            }
        } catch (ClassNotFoundException ex) {
            java.util.logging.Logger.getLogger(frame1.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
        } catch (InstantiationException ex) {
            java.util.logging.Logger.getLogger(frame1.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
        } catch (IllegalAccessException ex) {
            java.util.logging.Logger.getLogger(frame1.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
        } catch (javax.swing.UnsupportedLookAndFeelException ex) {
            java.util.logging.Logger.getLogger(frame1.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
        }
        //</editor-fold>

        /* Create and display the form */
        java.awt.EventQueue.invokeLater(new Runnable() {
            @Override
            public void run() {
                new frame1().setVisible(true);
            }
        });
    }

    // Variables declaration - do not modify                    
    private javax.swing.JButton jButton1;
    private javax.swing.JButton jButton2;
    private javax.swing.JLabel jLabel1;
    private javax.swing.JLabel jLabel2;
    private javax.swing.JLabel jLabel3;
    private javax.swing.JLabel jLabel4;
    private javax.swing.JLabel jLabel5;
    private javax.swing.JLabel jLabel6;
    private javax.swing.JTextField jTextField1;
    private javax.swing.JTextField jTextField2;
    private javax.swing.JTextField jTextField3;
    private javax.swing.JTextField jTextField4;
    private javax.swing.JTextField jTextField5;
    private javax.swing.JTextField jTextField6;
    // End of variables declaration                  
}

cuando meta los tres datos y de a comprovar
en el renglon soluciones reales me diga correcto o erroneo. y en las dos de abajo que me de los dos resultados.

alguien que me adapte el codigo o que me diga como se hace para aprender de una maldita vez. que el profesor que tengo en el curso a distancia no me hace caso.
2  Programación / Java / Aprende a programar con Java en: 8 Junio 2014, 01:28 am
Aprende a programar con Java
Un enfoque practico partiendo de cero.

Constara de 14 temas. ire actualizando para que quede todo en la primera hoja.

Como a empezado una disputa de que si java es mejor o peor. aqui dejo unos graficos que porsi ablan solo.




Tema 1

[spoiler]

Para empezar a programar lo más importante es las herramientas de trabajo.
Un ordenador, que tengo suficiente capacidad y un buen rendimiento.  El no tenerlo nos puede provocar que no nos funcione lo rápido que deseamos las aplicaciones que creemos.

Os recomiendo NetBeans IDE 8.0 ya que viene todo lo necesario; librerías, copiladores....
Para hacer gráficos y pantallas hay otras aplicaciones que dan más variedad pero son más difíciles de realizar y después acoplarlas a nuestros proyectos.

Aplicare poca teoría, ya que la mejor manera es con ejemplos, no usar copiar y pegar. Sino leer, pasarlo a un cuaderno, y después escribirlo en el programa. Así se os queda mejor los códigos, y la manera de como se expresan.

Aquí el código del tema 1.



Código:

import javax.swing.*;
//By DareK17
public class practica1 {
    public static void main(String[] args) {
//ejercicio de concepto básicos
        int elecion;
        do {
            elecion = Integer.parseInt(JOptionPane.showInputDialog("Bienvenido a mi primera aplicación.\n" +
 "Tema 1\n\n" + "Por favor elija una opción:\n" + "Ejercicios de concepto básico.\n" + "1.            Ejercicio 1.1\n" +
"2.            Ejercicio 1.2\n" + "3.            Ejercicio 1.3\n" + "4.            Ejercicio 1.4\n" +  "5.            Ejercicio 1.5\n" +
 "6.            Ejercicio 1.6\n" + "7.            Ejercicio 1.7\n" + "8.            Ejercicio 1.8\n" + "9.            Ejercicio 1.9\n" +
 "10.          Ejercicio 1.10\n" + "11.          Ejercicio 1.11\n" + "12.          Ejercicio 1.12\n" + "13.          Ejercicio 1.13\n" +
"14.          Ejercicio 1.14\n" + "\nEjercicios propuestos.\n" + "15.          Ejercicio 1.1\n" + "16.          Ejercicio 1.2\n" +
"17.          Ejercicio 1.3\n" + "\n\n" + "18.    Para Salir de la aplicación"));
        switch (elecion){
//ejercicio 1.1
            case 1:
                JOptionPane.showMessageDialog(null, "ejercicio de concepto básicos 1.1");
                JOptionPane.showMessageDialog(null, "Descripción: Diseñar un programa que lo único que haga sea pedir un numero al usuario, leerlo del teclado y terminar su ejecución.");
                JOptionPane.showInputDialog("Escriba un numero cualquiera");
            break;
//ejercicio 1.2
            case 2:
                JOptionPane.showMessageDialog(null, "ejercicio de concepto básicos 1.2");
                JOptionPane.showMessageDialog(null, "Descripción: Modificar el ejercicio anterior para que pida el numero y lo muestre.");
                int nume1 = Integer.parseInt(JOptionPane.showInputDialog("Escriba un numero cualquiera"));
                JOptionPane.showMessageDialog(null, "El numero introducido es: " +nume1);
            break;
//ejercicio 1.3
            case 3:
                JOptionPane.showMessageDialog(null, "ejercicio de concepto básicos 1.3");
                JOptionPane.showMessageDialog(null, "Descripción: Pedir al usuario su edad y mostrar la que tendrá el próximo año.");
                int edad = Integer.parseInt(JOptionPane.showInputDialog("Tu edad?"));
                edad = edad + 1;
                JOptionPane.showMessageDialog(null, "Tendrás el año que viene: " +edad +"años");
            break;
//ejercicio 1.4
            case 4:
                JOptionPane.showMessageDialog(null, "ejercicio de concepto básicos 1.4");
                JOptionPane.showMessageDialog(null, "Descripción: escribir una aplicación que pida el año actual y el de nacimiento del usuario.\nDebe calcular la edad del usuario, suponiendo que en el año en curso el usuario ya ha cumplido años.");
                int fechanacimiento = Integer.parseInt(JOptionPane.showInputDialog("En qué año naciste?"));
                int fechaactual = Integer.parseInt(JOptionPane.showInputDialog("en qué año estamos?"));
                int edad2 = fechaactual - fechanacimiento;
                JOptionPane.showMessageDialog(null, "Tienes:  " +edad2 +"años");
            break;
//ejercicio 1.5
            case 5:
                JOptionPane.showMessageDialog(null, "ejercicio de concepto básicos 1.5");
                JOptionPane.showMessageDialog(null, "Descripción: Necesitamos una aplicación que calcule la media aritmética de dos notas enteras.\nHay que tener en cuenta que la media puede contener decimales.");
                String nota1 = JOptionPane.showInputDialog("Primera nota");
                String nota2 = JOptionPane.showInputDialog("Segunda nota");
                double nota1b = Double.parseDouble (nota1);
                double nota2b = Double.parseDouble (nota2);
                double media =(nota1b + nota2b) / 2;
                JOptionPane.showMessageDialog(null, "Tienes: " +media);
            break;
//ejercicio 1.6
            case 6:
                JOptionPane.showMessageDialog(null, "ejercicio de concepto básicos 1.6");
                JOptionPane.showMessageDialog(null, "Descripción: modificar el ejercicio anterior para que calcule la media de tres notas enteras.");
                String nota3 = JOptionPane.showInputDialog("Primera nota");
                String nota4 = JOptionPane.showInputDialog("Segunda nota");
                String nota5 = JOptionPane.showInputDialog("Tercera nota");
                double nota3b = Double.parseDouble (nota3);
                double nota4b = Double.parseDouble (nota4);
                double nota5b = Double.parseDouble (nota5);
                double media2 = (nota3b + nota4b + nota5b) / 3;
                JOptionPane.showMessageDialog(null, "Tienes: " +media2);
            break;
//ejercicio 1.7
            case 7:
                JOptionPane.showMessageDialog(null, "ejercicio de concepto básicos 1.7");
                JOptionPane.showMessageDialog(null, "Descripción: Seria interesante disponer de un programa que pida como entrada un numero decimal y lo muestre redondeando al entero mas proximo.");
                String decimal = JOptionPane.showInputDialog("Escriba un numero decimal");
                double decimaloperation = Double.parseDouble(decimal);
                int entero = (int)(decimaloperation + 0.5);
                JOptionPane.showMessageDialog(null, "El numero entero próximo es: " + entero);
            break;
//ejercicio 1.8
            case 8:
                JOptionPane.showMessageDialog(null, "ejercicio de concepto básicos 1.8");
                JOptionPane.showMessageDialog(null, "Descripción: Un vendedor necesita gestionar los beneficios anuales que obtienen de la venta de manzanas.\nPor este motivo, nos ha pedido que diseñemos una aplicación que solicite el precio de venta por kilo,\nasi como las ventas en kilos de cada trimestre.\nLa aplicación mostrara el importe total.");
                String precio = JOptionPane.showInputDialog("Precio por kilo");
                double preciokilo = Double.parseDouble(precio);
                String kilos1 = JOptionPane.showInputDialog("Kilos del primer trimestre");
                String kilos2 = JOptionPane.showInputDialog("Kilos del segundo trimestre");
                String kilos3 = JOptionPane.showInputDialog("Kilos del tercer trimestre");
                String kilos4 = JOptionPane.showInputDialog("Kilos del cuarto trimestre");
                double kilos1b = Double.parseDouble (kilos1);
                double kilos2b = Double.parseDouble (kilos2);
                double kilos3b = Double.parseDouble (kilos3);
                double kilos4b = Double.parseDouble (kilos4);
                double totalanual = (kilos1b + kilos2b + kilos3b + kilos4b)* preciokilo ;
                JOptionPane.showMessageDialog(null, "las ganancias han sido: " +totalanual);
            break;
//ejercicio 1.9
            case 9:
                JOptionPane.showMessageDialog(null, "ejercicio de concepto básicos 1.9");
                JOptionPane.showMessageDialog(null, "Descripción: Un economista nos encarga un programa para realizar cálculos con el IVA.\nLa aplicación debe solicitar la base imponible y el IVA a aplicar.\nDebemos mostrar en pantalla el importe correspondiente al IVA y el total.");
                String baseimponible = JOptionPane.showInputDialog("Base imponible");
                double baseimponibleb = Double.parseDouble(baseimponible);
                String iva = JOptionPane.showInputDialog("IVA aplicable");
                double ivab = Double.parseDouble(iva);
                double importeiva = (baseimponibleb * ivab) / 100;
                double importetotal = importeiva + baseimponibleb;
                JOptionPane.showMessageDialog(null, "Base: " +baseimponibleb+ "\nIVA aplicado: " +ivab+ "\n\nimporté IVA: " +importeiva+ "\nTOTAL: "+importetotal);
            break;
//ejercicio 1.10
            case 10:
                JOptionPane.showMessageDialog(null, "ejercicio de concepto básicos 1.10");
                JOptionPane.showMessageDialog(null, "Descripción: Escribe un programa que tome como entrada un numero entero y nos indique que cantidad hay que sumarle para que el resultado sea múltiplo de 7.");
                final int MULTIPLO = 7;
                int n= Integer.parseInt(JOptionPane.showInputDialog("Introduce un numero"));
                int modulo = n %MULTIPLO;
                JOptionPane.showMessageDialog(null, "A: " + n + " hay que sumarle " + (MULTIPLO - modulo) %MULTIPLO + " para que sea múltiplo de " + MULTIPLO);
            break;
//ejercicio 1.11
            case 11:
                JOptionPane.showMessageDialog(null, "ejercicio de concepto básicos 1.11");
                JOptionPane.showMessageDialog(null, "Descripción: modificar el ejercicio anterior para que, indicando dos números n y m, nos diga qué cantidad hay que sumarle a n para que sea múltiplo de m");
                final int MULTIPLO2 = Integer.parseInt(JOptionPane.showInputDialog("Introduce un numero que será el múltiplo"));
                int n2= Integer.parseInt(JOptionPane.showInputDialog("Introduce un numero"));
                int modulo2 = n2 %MULTIPLO2;
                JOptionPane.showMessageDialog(null, "A: " + n2 + " hay que sumarle " + (MULTIPLO2 - modulo2) %MULTIPLO2 + " para que sea múltiplo de " + MULTIPLO2);
            break;
//ejercicio 1.12
            case 12:
                JOptionPane.showMessageDialog(null, "ejercicio de concepto básicos 1.12");
                JOptionPane.showMessageDialog(null, "Descripción: Diseñar una aplicación que calcule la longitud y el área de una circunferencia.\nPara ello, el usuario debe introducir el radio que puede contener decimales.");
                String medida = JOptionPane.showInputDialog("Introduce Unidad de medida: MM-CM-DM-M-HM-DAM-KM");
                String radio = JOptionPane.showInputDialog("Introduce el radio");
                double radiob = Double.parseDouble(radio);
                double longitud = 2 * Math.PI * radiob;
                double area = Math.PI * radiob * radiob;
                JOptionPane.showMessageDialog(null, "La longitud de la circunferencia es: " + longitud + "  " + medida + "\nEl área del circulo es: " + area + "  " + medida +"^2");
            break;
//ejercicio 1.13
            case 13:
                JOptionPane.showMessageDialog(null, "ejercicio de concepto básicos 1.13");
                JOptionPane.showMessageDialog(null, "Descripción: Crear un programa que, al pedir la base y la altura de un triangulo, muestre el área del mismo.");
                String medida2 = JOptionPane.showInputDialog("Introduce Unidad de medida: MM-CM-DM-M-HM-DAM-KM");
                String base = JOptionPane.showInputDialog("Introduce la base");
                double baseb = Double.parseDouble(base);
                String altura = JOptionPane.showInputDialog("Introduce el alto");
                double alturab = Double.parseDouble(altura);
                double area2 = baseb * alturab / 2;
                JOptionPane.showMessageDialog(null, "El área del triangulo es: " + area2 + "  " + medida2 +"^2");
            break;
//ejercicio 1.14
            case 14:
                JOptionPane.showMessageDialog(null, "ejercicio de concepto básicos 1.14");
                JOptionPane.showMessageDialog(null, "Descripción: Dado un polinomio de segundo grado\n\nCrear un programa que pida los coeficientes a, b y c, así como el valor de X, y calcule el valor correspondiente de y.");
                JOptionPane.showMessageDialog(null, "Formula: Y=ax^2+bx+c");
                String a = JOptionPane.showInputDialog("Introduce coeficiente a");
                double ab = Double.parseDouble(a);
                String b = JOptionPane.showInputDialog("Introduce coeficiente b");
                double bb = Double.parseDouble(b);
                String c = JOptionPane.showInputDialog("Introduce coeficiente c");
                double cb = Double.parseDouble(c);
                String x = JOptionPane.showInputDialog("y="+a+"x^2"+"+"+b+"x+"+c+"\n\nIntroduce valor de x");
                double xb = Double.parseDouble(x);
                double y=ab*xb*xb+bb*xb+cb ;
                JOptionPane.showMessageDialog(null, "para x=" + x + " resulta y=" + y + "\n\n" + y + "=" + a + x + "^2+" + b + x + "+" + c);
            break;
//ejercicio propuesto 1.1
            case 15:
                JOptionPane.showMessageDialog(null, "ejercicio propuestos 1.1");
                JOptionPane.showMessageDialog(null, "Descripción: Diseñar una aplicación que solicite al usuario que introduzca una cantidad medida en segundos.\nLa aplicación debe mostrar cuantas horas, minutos y segundos hay en el numero de segundos introducidos por el usuario.");
                int segundosintroducidos = Integer.parseInt(JOptionPane.showInputDialog("Introduce Segundos"));
                int horas = segundosintroducidos / 60 / 60 ;
                int minutos = segundosintroducidos / 60 - horas * 60 ;
                int segundos = segundosintroducidos - (minutos * 60 + horas * 60 * 60) ;
                JOptionPane.showMessageDialog(null, "El tiempo en segundos introducidos: " + segundosintroducidos +"\nNos dan que es: "+horas+":"+minutos+":"+segundos);
            break;
//ejercicio propuesto 1.2
            case 16:
                JOptionPane.showMessageDialog(null, "ejercicio propuestos 1.2");
                JOptionPane.showMessageDialog(null, "Descripción: Solicitar al usuario tres distancias:\n- La primera, medida en milímetros.\n- La segunda, medida en centímetros.\n- La última, medida en metros.\n\n Diseñar un programa que muestre la suma de las tres longitudes introducidas. Medida en centímetros.");
                String milimetro = JOptionPane.showInputDialog("Medida en milímetros");
                double mm = Double.parseDouble(milimetro);
                String centimetro = JOptionPane.showInputDialog("Medida en centímetros");
                double cm = Double.parseDouble(centimetro);
                String metro = JOptionPane.showInputDialog("Medida en metros");
                double m = Double.parseDouble(metro);
                double medida1b = mm / 10 ;
                double medida2b = cm ;
                double medida3b = m * 100 ;
                double total = medida1b + medida2b + medida3b ;
                JOptionPane.showMessageDialog(null, "El total de la suma son: " + total + " CM");
            break;
//ejercicio propuesto 1.3
            case 17:
                JOptionPane.showMessageDialog(null, "ejercicio propuestos 1.3");
                JOptionPane.showMessageDialog(null, "Descripción: \nUn biólogo está realizando un estudio de distintas especies de invertebrados y necesita \nuna aplicación que le ayude a contabilizar el numero de patas que tienen en total todos \nlos animales capturados durante una jornada de trabajo. Para ello, nos ha solicitado \nque escribamos una aplicación a la que hay que proporcionar:\n \n- El numero de hormigas capturadas de 6 patas. \n- El número de arañas capturadas de 8 patas. \n- El numero de cochinillas capturadas de 14 patas.\n \nLa aplicación debe mostrar el número total de patas que poseen todos los animales.");
                int hormigas = Integer.parseInt(JOptionPane.showInputDialog("Cuantas hormigas?"));
                int arañas = Integer.parseInt(JOptionPane.showInputDialog("Cuantas arañas?"));
                int cochinillas = Integer.parseInt(JOptionPane.showInputDialog("Cuantas cochinillas"));
                int patashormigas = 6 * hormigas ;
                int patasarañas = 8 * arañas ;
                int patascochinillas = 14 * cochinillas ;
                int totalpatas = patashormigas + patasarañas + patascochinillas ;
                JOptionPane.showMessageDialog(null, "Resumen del dia: \n"+"Hormigas capturadas: "+hormigas+"\n"+"Arañas capturadas: "+arañas+"\n"+"Cochinillas capturadas: "+cochinillas+"\n\n"+"Patas de hormigas: "+patashormigas+"\n"+"Patas de arañas: "+patasarañas+"\n"+"Patas de cochinillas: "+patascochinillas+"\n\n"+"Total de patas: "+totalpatas+"\n");
            break;
        }}while (elecion != 18);}}

Ahora la explicación y complexión del código.

Citar
JOptionPane.showMessageDialog(null, "Texto que se muestra en mensaje");
JOptionPane.showMessageDialog – esta setencia dice a la computadora que abra un panel con la información que hay entre los () al poner null, "Texto que se muestra en mensaje" provocamos que el null el mensaje salga en el centro de la pantalla.
Si ponemos unas coordenadas X, Y aparecerá en la posición que deseemos. Por ejemplo en la posición 200, 300 esto hará que salga con una separación del lateral izquierdo de 300 Pixeles y que baje unos 200.
El texto que aparece entre las “ ” será el mensaje que aparecerá en ese panel. Si ponemos un + esto permite encadenar diferentes frases que están entre “ ” o unir variables a un testo. Al escribir dentro de los “ ” una \n esto provoca un salto de línea. Y las variables simplemente se escriben el nombre de esa variable y se mostrara.

Ejemplo:
Citar
JOptionPane.showMessageDialog(null, "Resumen del dia: n"+"Hormigas capturadas: "+hormigas+"n"+"Arañas capturadas: "+arañas+"n"+"Cochinillas capturadas: "+cochinillas+"nn"+"Patas de hormigas: "+patashormigas+"n"+"Patas de arañas: "+patasarañas+"n"+"Patas de cochinillas: "+patascochinillas+"nn"+"Total de patas: "+totalpatas+"n");

El mensaje que muestra es:


Citar
JOptionPane.showInputDialog("Cuantas hormigas?")
Este es parecido al anterior pero con la diferencia que este tiene un campo en el que te permite escribir. Bien para meter valores o algún texto.
Normalmente se escribe después de poner la variable que va a recoger esa información que se va a introducir seguida de un =.
Cuando uno quiere introducir una serie de valores o texto necesita declarar una variable. Para ello hay que elegirla bien. No se debe coger una que tenga mucha capacidad si el número por ejemplo es corto, ya que aria que consumiera mucha memoria RAM del ordenador innecesariamente.
Os pongo un cuadro que pone los valores de los diferentes tipos de variables que se pueden asignar.



El comando JOptionPane.showInputDialog trabaja con el rango String.
Porque que si se quiere guardar en otro rango de variable, a de usarse sentencias que adaptan la información introducida.  
Ejemplo:
Citar
int hormigas = Integer.parseInt(JOptionPane.showInputDialog("Cuantas hormigas?"));
La variable hormigas es de rango int. Números enteros de 32 bit.
Por lo que se usa la sentencia Integer.parseInt que adapta los datos de rango String a int.

Si fuera de rango doublé seria la tencencia Double.parseDouble este permite introducir decimales.
veamos un ejemplo:
Citar
String centimetro = JOptionPane.showInputDialog("Medida en centímetros");                
double cm = Double.parseDouble(centimetro);

Los tres más usados son String, int y double.

Una cosa muy importante para pode usar las sentencias:
JOptionPane.showInputDialog
JOptionPane.showMessageDialog

Es el poner al principio la sentencia de llamada de la librería swing.
Citar
import javax.swing.*;

Esta es la que contiene toda la programación hecha de los paneles que salen al escribir las sentencias anteriores.
Lo bueno de usar el NetBeans IDE 8.0 es que el principio del proyecto te lo escribe el:
Citar
public class nombre del proyecto {    public static void main(String[] args) {
Os pondré varios cuadros con las operaciones que se pueden hacer con las variables.






Todas estas sentencias las explicare en el próximo tema.

Citar
do {            switch (x){            case 1:            break;}}while (x != 18);

[/spoiler]
Páginas: [1]
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines