Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /*Programa: Congruencia De Zeller
- Realizado Por: Jorge Chayan*/
- #include <stdio.h>
- int zeller(int , int, int);
- int main()
- {
- int meses[13] = {0, 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31};
- char *dia_sem;
- int mes;
- int dia;
- int anio;
- int res;
- do
- {
- printf ("\nDia: ");
- scanf ("%d", &dia);
- printf ("\nMes: ");
- scanf ("%d", &mes);
- if (dia > meses[mes]) printf ("\nError En El Mes Seleccionado No Existe Tal Dia\n");
- if (dia < 1) printf ("\nError! Dia 0 no Existe!\n");
- if (mes < 1 || mes > 12) printf ("\nError. Rango De Mes: 1-12\n");
- }while (dia > meses[mes] || dia < 1 || mes < 1 || mes > 12);
- printf ("\nA\244o: ");
- scanf ("%d", &anio);
- if (mes < 3) anio = anio - 1;
- res = zeller(anio, mes, dia);
- switch (res)
- {
- case 0:
- dia_sem = "Domingo";
- break;
- case 1:
- dia_sem = "Lunes";
- break;
- case 2:
- dia_sem = "Martes";
- break;
- case 3:
- dia_sem = "Miercoles";
- break;
- case 4:
- dia_sem = "Jueves";
- break;
- case 5:
- dia_sem = "Viernes";
- break;
- case 6:
- dia_sem = "Sabado";
- break;
- }
- printf ("\nLa Fecha Corresponde Con Un %s", dia_sem);
- getchar();
- getchar();
- return 0;
- }
- int zeller(int y, int m, int d)
- {
- int t[12] = {0, 3, 2, 5, 0, 3, 5, 1, 4, 6, 2, 4};
- return (y + (y / 4) - (y / 100) + (y / 400) + t[m-1] + d) % 7;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement