javatlacati

Generador de dias de mes y año especificados

Jun 13th, 2014
325
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 2.86 KB | None | 0 0
  1. import javax.swing.JOptionPane;
  2.  
  3. public class JavaApplication16 {
  4.  
  5.     public static int a[][] = {{0, 0, 0, 0, 0, 0, 0},
  6.     {0, 0, 0, 0, 0, 0, 0},
  7.     {0, 0, 0, 0, 0, 0, 0},
  8.     {0, 0, 0, 0, 0, 0, 0},
  9.     {0, 0, 0, 0, 0, 0, 0},
  10.     {0, 0, 0, 0, 0, 0, 0}};
  11.  
  12.     static int diaspormes[] = {31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31};
  13.  
  14.     public static void ImprimeMes(int ds, int ms, boolean bisiesto) {
  15.         int i, j, c, cd;
  16.         System.out.println("D\tL\tMa\tMi\tJ\tV\tS");
  17.         System.out.println("===================================================");
  18.         int diasdemes = diaspormes[ms - 1] + 1;
  19.         if (ms == 2 && bisiesto) {
  20.             diasdemes += 1;
  21.         }
  22.         c = 0;
  23.         cd = 0;
  24.         for (i = 0; i <= 5; i++) {
  25.             for (j = 0; j <= 6; j++) {
  26.                 c = c + 1;
  27.                 if (c >= ds) {
  28.                     cd = cd + 1;
  29.                 }
  30.                 if (cd >= 1 && cd < diasdemes) {
  31.                     a[i][j] = cd;
  32.                     System.out.print(a[i][j] + "\t");
  33.                 } else {
  34.                     System.out.print("  \t");
  35.                 }
  36.             }
  37.             System.out.println();
  38.         }
  39.         System.out.println();
  40.     }
  41.  
  42.     public static void main(String[] args) {
  43.         int N, dim1, numeromes;
  44. //        x = 6;
  45.         String[] meses = {"Enero", "Febrero", "Marzo",
  46.             "Abril", "Mayo", "Junio",
  47.             "julio", " Agosto", "septiembre",
  48.             "Octubre", "Noviembre", "Diciembre"};
  49.         String[] diassemana = {"Lunes", "Martes", "Miércoles",
  50.             "Jueves", "Viernes", "Sábado",
  51.             "Domingo"};
  52.         int codm[] = {0, 0, 3, 3, 6, 1, 4, 6, 2, 5, 0, 3, 5};
  53.         dim1 = 1;//se calcula el primero
  54.         int dia = 1;
  55.         numeromes = Integer.parseInt(JOptionPane.showInputDialog("mes"));
  56.         N = dim1 + codm[numeromes];
  57.         String anio = JOptionPane.showInputDialog("año");
  58.         int anionumero = Integer.parseInt(anio);
  59.         String astring = anio.substring(2);
  60.         int a = Integer.parseInt(astring);
  61.         N += a + a / 4;
  62.         if (anionumero > 1999) {
  63.             N += 6;
  64.         }
  65.         //else N+0
  66.  
  67.         String mes = meses[numeromes - 1];
  68.         System.out.println("El primer día de " + mes + " del año " + anio + " cayó en...");
  69.         int diasemana = N % 7;
  70.         //System.out.println(diasemana);
  71.         System.out.println("=> " + diassemana[diasemana - 1]);
  72.         boolean bisiesto = anionumero % 4 == 0;
  73.         if (bisiesto) {
  74.             System.out.println("El año fue bisiesto");
  75.         } else {
  76.             System.out.println("El año no fue bisiesto");
  77.         }
  78.         ImprimeMes(diasemana, numeromes, bisiesto);
  79.     }
  80. }
  81. //cd:contador de dias
  82. //ds:dia de la semana
  83. //diml:dia en que comienza el mes 1(enero)
  84. //mes:mes que se desea imprimir
Advertisement
Add Comment
Please, Sign In to add comment