Hello

sábado, 2 de junio de 2012

Dia Mes Año DevC++


#include<iostream>
using namespace std;

int main()
{
int d, m, a, dm, t, i;

cout << "Ingrese fecha (dd mm aa): "; // annos de dos digitos
cin >> d >> m >> a;

t = 365 * a + ( a - 1 ) / 4;    /* dias hasta el anno anterior
      desde 1900 (ej. 1903,incluye
      el anno 1900, 1901, 1902: 3
      annos ).
      y un dia por cada anno bisiesto,
      hasta el anno anterior (ej.        
                       1915, hasta el 14 tenemos: 1904,
      1908, 1912 o sea 14/4 = 3. */

for( i = 1; i<m; t += dm, i++ ) //dias hasta el mes anterior
  switch(i)
     {
     case 1 :
 case 3 :
 case 5 :
 case 7 :
 case 8 :
 case 10:
 case 12: dm = 31;
      break;
 case 4 :
 case 6 :
 case 9 :
 case 11: dm = 30;
            break;
 case 2 : if( a > 0 && a % 4 == 0 )
 dm = 29;
else
 dm = 28;
 }

t+=d; //dias hasta la fecha

t%=7; /*dias que sobran despues de reducir las semanas
si 1 de enero fue lunes, el 7 del mismo mes
(t%7 == 0) sera domingo */

switch ( t )
{
  case 0: cout << "Domingo\n";
      break;
  case 1: cout << "Lunes\n";
      break;
  case 2: cout << "Martes\n";
      break;
  case 3: cout << "Miercoles\n";
      break;
  case 4: cout << "Jueves\n";
      break;
  case 5: cout << "Viernes\n";
      break;
  case 6: cout << "Sabado\n";
      break;
}
cin.ignore();
cin.get();
return 0;
}

No hay comentarios:

Publicar un comentario