martes, 2 de marzo de 2010

Para Sony... todos los años son bisiestos.

Unos compas del curro contaban ayer 1 de Marzo, con mis 27 años recién cumplidos el mismo día, que parece ser que si encendías la PS3 ese mismo día... se iba a hacer gárgaras. He querido mirar un poco el porqué. Uno de los primeros sitios que he encontradoes este. Otro, es Teknoconsolas (es de un colega del curro). En este aparece la noticia del error y el pronunciamiento de Sony.

Todo pinta que a estas alturas parece que ya se ha solucionado. También se puede ver un comunicado de Sony sobre la solución al problema.

Pero, no quiero hablar de Sony. Sino, quiero hablar sobre la programación de los años bisiestos. Cuando estamos en los Ciclos Formativos o en la Universidad y estamos empezando suelen caer ejercicios con fechas. Estos ejercicios suelen incluir comprobaciones de años bisiestos. ¿Cómo se sabe si un año es bisiesto o no? Hay que tener en cuenta el resultado de 3 operaciones distintas. El año en cuestión hay que dividirlo entre:

  • 4
  • 100
  • 400
Una vez hemos dividido este año entre estos tres valores, miramos el resto. A esta operación se le llama módulo. 

num1 MOD num2 = resto de (num1/num2)

Una nomenclatura de algunos lenguajes de programación es:
  • num1 % num2: El '%' representa el modulo de la misma manera que '/' representa el cociente de la división.
  • num1 == num2 : Condición de igualdad. Si se pone sólo un '=' se asignará ese valor y siempre pasará por esa condición.
  • num1 != num2: Todo lo contrario al anterior. Pregunta si num1 es distinto a num2.
Así, tenemos un código fuente que puede ser:


if(anio % 4 == 0 && anio % 400 == 0 && anio % 100 != 0){
     "El año es bisiesto"; 
}else{
     "El año NO es bisiesto"; 
}



Así, si nos damos cuenta de que esto se hace nada más empezar a estudiar esta carrera (ya sean ciclos formativos o la universidad), esto es un cate como una casa. Aunque, la pregunta es: ¿Cuántas otras cagadas de este estilo habremos hecho sin darnos cuenta? Espero que pocas o ninguna. Que es muy fácil hablar, pero después, cuando nosotros lo hacemos, nos quedamos con la boca pequeña. 

No hay comentarios:

Publicar un comentario