miércoles, 23 de abril de 2014

Unidad 2 Ejercicio 19: Potencias de 2 con excepciones y cuadros de diálogo

Volvemos al ejercicio 19 de la unidad 2, pero en este caso leemos los valores mediante un cuadro de diálogo de la clase JOptionPane y mostramos el resultado del mismo modo.

También aprovechamos para repasar el manejo de excepciones y hacemos que si el usuario introduce algún valor que no sea de tipo numérico se lo advierta (ojo no usamos excepciones específicas).


package interfaz;

import javax.swing.JOptionPane;


public class Interfaz {

    /**
     * @param args the command line arguments
     */
    static String calculaPotencia(int num){
        String cadena="";

       
        for (int i = 0; i <= num; i++) {
            cadena+=String.valueOf( (int) Math.pow(2,i))+"\n ";
        }
       
        return cadena;
    }
    public static void main(String[] args) {
        // TODO code application logic here
        String temp="";
        int num=0;
       /* prima uno = new prima();
        uno.setTitle("Primear venta");
        uno.setVisible(true);
        *
        *
        */
        //temp=JOptionPane.showInputDialog("hola Mundo");
       
        //JOptionPane.showMessageDialog(null, temp, "Este es el resultado",JOptionPane.QUESTION_MESSAGE);
       
        boolean numeroLeido=false;
        while(!numeroLeido)
            {
                try {

                            temp = JOptionPane.showInputDialog("Introduzca un número");
                            num=   Integer.parseInt(temp);
                            numeroLeido=true;

                } catch (Exception e) {
                    JOptionPane.showMessageDialog(null, "Asegúrese de Introducir sólo números", "Error de entrada", JOptionPane.ERROR_MESSAGE);
                }
               
              
                   
            }
       
        JOptionPane.showMessageDialog(null,calculaPotencia(num),"Las "+temp+ "primeras potencias de 2",JOptionPane.INFORMATION_MESSAGE);
    }
}