• Lenguaje

    C

  • Descripción

    Determine el día de la semana de cualquier fecha desde enero de 1700.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
#include <stdio.h>
#include <stdlib.h>

int main (void)
{
    int anno, bisiesto, dia, mes, modulo;
    int numero;
    printf ("Ingresa el valor de anno: ");
    scanf ("%d", &anno);
    (void) getchar ();
    printf ("Ingresa el valor de dia: ");
    scanf ("%d", &dia);
    (void) getchar ();
    printf ("Ingresa el valor de mes: ");
    scanf ("%d", &mes);
    (void) getchar ();
    if((anno%4==0&&anno%100!=0)||anno%400==0)
        bisiesto=1;
    else
        bisiesto=0;
    modulo=0;
    if((bisiesto==0&&mes==5)||(bisiesto==1&&mes==10))
        modulo=1;
    if((bisiesto==0&&mes==8)||(bisiesto==1&&mes==5))
        modulo=2;
    if((bisiesto==0&&(mes==2||mes==3||mes==11))||(bisiesto==1&&(mes==2||mes==8)))
        modulo=3;
    if((bisiesto==0&&mes==6)||(bisiesto==1&&(mes==3||mes==11)))
        modulo=4;
    if((bisiesto==0&&(mes==9||mes==12))||(bisiesto==1&&mes==6))
        modulo=5;
    if((bisiesto==0&&(mes==4||mes==7))||(bisiesto==1&&(mes==9||mes==12)))
        modulo=6;
    numero=((anno-1)%7+((anno-1)/4-3*((anno-1)/100+1)/4)%7+modulo+dia%7)%7;
    if(numero==0)
        printf ("Domingo\n");
    if(numero==1)
        printf ("Lunes\n");
    if(numero==2)
        printf ("Martes\n");
    if(numero==3)
        printf ("Mi\202rcoles\n");
    if(numero==4)
        printf ("Jueves\n");
    if(numero==5)
        printf ("Viernes\n");
    if(numero==6)
        printf ("S\240bado\n");
    printf ("Valor de bisiesto: %d\n", bisiesto);
    printf ("Valor de modulo: %d\n", modulo);
    printf ("Valor de numero: %d\n", numero);
    putchar ('\n');
    system ("pause");
    return EXIT_SUCCESS;
}