Cálculo de la fecha de un día de la semana

votos
1

Dado un día de la semana (1-7), ¿cómo puedo calcular cuál fue la última fecha de ese día de la semana?

Ejemplo: Hoy es miércoles , 11/11/2008, y quiero saber cuál fue la fecha del último viernes .

Publicado el 12/11/2008 a las 20:45
fuente por usuario
En otros idiomas...                            


2 respuestas

votos
1

Si todayes el día actual de la semana, puede usar algo como:

days_since_friday = (((today - 1) + 7) - (6 - 1)) % 7

Esto supone que el viernes está representado por el día número 6 de la semana (es decir, 1 representa el domingo). Luego reste days_since_fridayde la fecha actual, y obtendrá la fecha del final de la semana pasada.

La expresión anterior es un poco más complicada de lo que necesita ser. Si su día de la semana comenzó en 0 para el domingo, se simplifica a:

days_since_friday = ((today + 7) - 5) % 7

o

days_since_friday = (today + 2) % 7
Respondida el 12/11/2008 a las 20:50
fuente por usuario

votos
4

¿En general? Ver cálculos de Calendrix .

En este caso más estrecho de dentro de la semana anterior? Encuentra la diferencia en días (viernes = 5, miércoles = 3). Encuentra diferencias en semanas (la semana pasada = -7 días). Cuando haya encontrado el desplazamiento en días + semanas, aplique ese desplazamiento a la fecha del calendario.

Respondida el 12/11/2008 a las 20:53
fuente por usuario

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more