Return to Snippet

Revision: 54324
at December 21, 2011 06:34 by juanaco1


Updated Code
/*==========================================================
  FUNCION QUE DEVUELVE QUE DIA ES EL 1 DE EL MES Y A��O DADOS
  EL LUNES ES 1, MARTES ES 2, ... , EL DOMINGO ES 7
  ----------------CONGRUENCIA DE ZELLER---------------------
==========================================================*/
int DiaSemana (int anyo, int mes, int dia) {

  int a, y, m, diaSemana;

  a = (14-mes) / 12;
  y = anyo - a;
  m = mes + (12*a) - 2;
  dia1 = (dia + y + (y/4) - (y/100) + (y/400) + (31*m) / 12) % 7;
  if (dia1==0) {
    dia1=7;
  }

  return diaSemana;
}

Revision: 54323
at December 21, 2011 06:32 by juanaco1


Updated Code
/*==========================================================
  FUNCION QUE DEVUELVE QUE DIA ES EL 1 DE EL MES Y A�O DADOS
  EL LUNES ES 1, MARTES ES 2, ... , EL DOMINGO ES 7
  ----------------CONGRUENCIA DE ZELLER---------------------
==========================================================*/
int DiaSemana (int anyo, int mes, int dia) {

  int a, y, m, diaSemana;

  a = (14-mes) / 12;
  y = anyo - a;
  m = mes + (12*a) - 2;
  dia1 = (dia + y + (y/4) - (y/100) + (y/400) + (31*m) / 12) % 7;
  if (dia1==0) {
    dia1=7;
  }

  return diaSemana;
}

Revision: 54322
at December 21, 2011 06:31 by juanaco1


Updated Code
/*==========================================================
  FUNCION QUE DEVUELVE QUE DIA ES EL 1 DE EL MES Y AÑO DADOS
  EL LUNES ES 1, MARTES ES 2, ... , EL DOMINGO ES 7
  ----------------CONGRUENCIA DE ZELLER---------------------
==========================================================*/
int PosicionDia1 (int anyo, int mes) {

  const int dia=1;
  int a, y, m, dia1;

  a = (14-mes) / 12;
  y = anyo - a;
  m = mes + (12*a) - 2;
  dia1 = (dia + y + (y/4) - (y/100) + (y/400) + (31*m) / 12) % 7;
  if (dia1==0) {
    dia1=7;
  }

  return dia1;
}

Revision: 54321
at December 20, 2011 07:25 by juanaco1


Updated Code
/*========================================================
FUNCION QUE DEVUELVE QUE DIA ES EL 1 DE EL MES Y ANYO DADOS
EL LUNES ES 1, MARTES ES 2, ...
========================================================*/
int NombreDia1(int anyo, int mes, int dia) {
  
  int a, b, dia1;
  
  if (mes <= 2) {
    mes = mes + 10;
    anyo = anyo - 1;
  } else {
    mes = mes - 2;
  }
  
  a = anyo % 100;                                                
  b = anyo / 100;                                                       
  dia1 = (( 700 + ((26 * mes - 2) / 10) + dia + a + a/4 + b/4 - 2*b) % 7);
  
  return dia1;
  
}

Revision: 54320
at December 20, 2011 07:10 by juanaco1


Initial Code
/*========================================================
FUNCION QUE DEVUELVE QUE DIA ES EL 1 DE EL MES Y A�O DADOS
EL LUNES ES 1, MARTES ES 2, ...
========================================================*/
int NombreDia1(int anyo, int mes, int dia) {
  
  int a, b, dia1;
  
  if (mes <= 2) {
    mes = mes + 10;
    anyo = anyo - 1;
  } else {
    mes = mes - 2;
  }
  
  a = anyo * 100;                                                
  b = anyo / 100;                                                       
  dia1 = (( 700 + ((26 * mes - 2) / 10) + dia + a + a/4 + b/4 - 2*b) % 7) - 1;
  
  if (dia1 <= 0) {
    dia1 = dia1 + 7;
  }
  
  return dia1;
  
}

Initial URL

                                

Initial Description
Averigua que dia de la semana es una fecha dada:
El lunes es 1, el martes 2, ... , el domingo es el 7

Initial Title
Congruencia de Zeller (devuelve el dia de la semana dada una fecha)

Initial Tags

                                

Initial Language
C++