CALCULO DEL NÚMERO DE SEMANA SEGÚN ISO 8601

Páginas: 2 (418 palabras) Publicado: 17 de diciembre de 2014
Me rompí la cabeza en su día con eso.

Necesitas dos cosas:
- rutina que dada una fecha cualquiera, proporcione el día de la semana (lunes, martes, miércoles... etc.) entendiendo comolunes-0->6-domingo o algo similar
- rutina que dadas dos fechas, de el numero de días de diferencia entre ellas

la norma ISO8601 indica que si la primera semana tiene menos de 3 días, no debe ser contadacomo la primera semana, sino como la ultima del año anterior. Si la primera semana tiene 4 o mas días, si debe ser considerada como la primera semana del año.

Tu problema se divide, de esta forma,en dos subproblemas de fácil solución:
1) ¿que fecha fue el primer lunes de la primera semana del año?
2) ¿cual es la distancia en DIAS desde la fecha que quiero calcular su numero de semana a lafecha del lunes de la primera semana del año? realizando una división entre 7, que es el numero de días que tiene una semana, tienes tu buscado numero de semana

la respuesta a la pregunta numero1, que es la complicada es:
saca el día de la semana del día 1 de enero del año en cuestión:
- si el día en cuestión es jueves o anterior, el día 1 de enero de dicho año ES la primera semana,ahora solo tendrás que calcular que fecha fue dicho lunes, para eso, simplemente coge (1/1/yyyy)-día de la semana en numero(ya sabes, 0 para lunes y 6 para domingo).
- si el día en cuestión es viernes osuperior, la semana SIGUIENTE es la primera semana del año, así que calcula el lunes de dicha semana siguiente.

tabla resumen:
si (1/1/yyyy)=(lunes) entonces lunes de la semana 1=1/1/yyyy
si(1/1/yyyy)=(martes) entonces lunes de la semana 1=31/12/yyyy-1
si (1/1/yyyy)=(miercoles) entonces lunes de la semana 1=30/12/yyyy-1
si (1/1/yyyy)=(jueves) entonces lunes de la semana 1 es29/12/yyyy-1
si (1/1/yyyy)=(viernes) entonces lunes de la semana 1 es 4/1/yyyy
si (1/1/yyyy)=(sabado) entonces lunes de la semana 1 es 3/1/yyyy
si (1/1/yyyy)=(domingo) entonces lunes de la semana 1 es...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • Calculo numerico
  • Calculo Numerico
  • Calculo Numerico
  • Calculo numerico
  • Calculo Numerico
  • Calculo Numerico
  • calculo numerico
  • calculo numerico

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS