domingo, 29 de enero de 2012

MI PRIMER PROGRAMA BIEN ELABORADO


Es un programa que al ingresar la fecha, verificando si es correcta y si el año es Bisiesto

package validarfecha;
import javax.swing.*;
/**
 *
 * @author Usuario
 */
public class Validarfecha {
    /**
     * @param args the command line arguments
     */
    public static void main(String[] args) {
        // TODO code application logic here
        int dia, mes, año=0, maxdias=0;
       String temp;
       boolean hayError=false, añobisiesto=false;

       dia= Integer.parseInt(JOptionPane.showInputDialog("ingrese dia"));
       temp= JOptionPane.showInputDialog("digite el mes");
       mes = Integer.parseInt(temp);
       año = Integer.parseInt(JOptionPane.showInputDialog("digite el año"));
       // Mostrar fecha
       JOptionPane.showMessageDialog(null,"la fecha es:"+dia+"/"+mes+"/"+año);
       // Validar la mes
       if ((año%4==0)||!(año%100==0)&&(año%400==0))
           añobisiesto=true;
          
        switch (mes) {
           case 2:
               if(añobisiesto)  
                   maxdias=29;
               else maxdias=28;
               break;
           case 1:
           case 3:
           case 5:
           case 7:
           case 8:
           case 10:
           case 12: maxdias=31;
               break;
           case 4:
           case 6:
           case 9:
           case 11: maxdias=30;
             break;
                     default: hayError=true;         }
                 //validar los días
       if ((dia<1)||(dia>maxdias))
           hayError=true;
            // Impresión si la fecha es correcta o incorrecta
              if (hayError)             
                JOptionPane.showMessageDialog(null, "la fecha leida es incorrecta :" + dia + "/"+ mes + "/" + año);
                else
                  JOptionPane.showMessageDialog(null, "la fecha leida es correcta :" + dia + "/"+ mes + "/" + año);
                //impresion si el año es bisiesto
               if (añobisiesto)
                  JOptionPane.showMessageDialog(null, "este año es bisiesto:" + año);   }
    }