Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /*Programa: Congruencia De Zeller
- Realizado Por: Jorge Chayan*/
- #include <iostream>
- using namespace std;
- int zeller(int , int, int);
- int main()
- {
- int meses[13] = {0, 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31};
- string dia_sem;
- int mes;
- int dia;
- int anio;
- int res;
- do
- {
- cout << "\nDia: ";
- cin >> dia;
- cout << "\nMes: ";
- cin >> mes;
- if (dia > meses[mes]) cout <<"\nError En El Mes Seleccionado No Existe Tal Dia\n";
- if (dia < 1) cout << "\nError! Dia 0 no Existe!\n";
- if (mes < 1 || mes > 12) cout <<"\nError. Rango De Mes: 1-12\n";
- }while (dia > meses[mes] || dia < 1 || mes < 1 || mes > 12);
- cout << "\nA\244o: ";
- cin >> 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;
- }
- cout << "\nLa Fecha Corresponde Con Un " << dia_sem << endl << endl;
- system("pause");
- 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;
- }
Add Comment
Please, Sign In to add comment