Geek the Planet


Curiosidades no image

Published on Febrero 29th, 2008 | by Angelfire

0

Años Bisiestos

Un año es bisiesto si dura 366 días, en vez de los 365 de un año común. Ese día adicional se suele añadir al final del mes más corto, fechándose como 29 de febrero. Este día se añade para corregir el desfase que existe con la duración real de los años: 365 días y 6 horas aproximadamente. Esto hace que se corrija cada cuatro años (los años múltiplos de cuatro) que se acumulan 24 horas. El calendario juliano consideraba bisiesto los años divisibles entre cuatro. Así el año juliano dura 365 días +1/4=365,25 días (más que el año trópico que dura 365,2422 días). La regla para los años bisiestos según el calendario gregoriano es:

Un año es bisiesto si es divisible por 4, excepto el último de cada siglo (aquellos divisibles por 100), que para ser bisiestos, también deben ser divisibles por 400.

Es decir los años que sean divisibles por 4 serán bisiestos; aunque no serán bisiestos si son divisibles entre 100 (como los años 1700, 1800, 1900 y 2100) a no ser que sean divisibles por 400 (como los años 1600, 2000 ó 2400). En 400 años debe haber 97 años bisiestos, de esa manera el año del calendario gregoriano se mantiene muy parecido al año solar. Así el año gregoriano dura 365 días +1/4 -1/100 +1/400 = 365,2425 días (más que el año trópico que dura 365,2422 días). Como el error es de 0,0003 días por año, podría parecer que al cabo de tres mil años se habrá acumulado un día de error. Pero en realidad no sabemos exactamente cuándo llegará el error a un día. La cifra de 365,2422 días por año trópico no es del todo exacta, porque tanto la duración del año trópico, como la velocidad de rotación de la tierra, van cambiando con los siglos, y de una manera que no es completamente predecible. Existen versiones que indican que ese día se descontará el año 3600, que no será un año bisiesto Algoritmo de un Año Bisiesto.

Algoritmo de un Año Bisiesto

Año bisiesto

En PHP

<?php
// Generamos el arreglo con la fecha actual
$hoy = getdate();
 // Generamos el arreglo con el primer día del mes
$inicio = getdate(mktime(0,0,0,$hoy[mon],1,$hoy[year]));
 //evaluamos
if(($inicio[year]%4==0 &amp;&amp; $inicio[year]%100!=0 )|| $inicio[year]%400==0)
{
// devolvemos si es verdadero
return true;  }
?>

Otra Versión

<?php
function es_bisiesto($year=NULL) {
    $year = ($year==NULL)? date('Y'):$year;
// devolvemos true si es bisiesto
    return ( ($year%4 == 0 &amp;&amp; $year%100 != 0) || $year%400 == 0 );
}?>

Más Info: Año Bisiesto
Algoritmo Bisiesto

Tags: ,


About the Author

Systems Engineering, Computer Systems Specialist, Social Engineering Specialist. Social Media Analyzer. Usability and SEO enthusiasm (Este es mi perfil de Twitter...)



Comments are closed.

Back to Top ↑
  • Comentarios recientes

  • Miniposts

    • iOS 8 disponible para descargar

      Hoy se anunció de manera oficial iOS 8, la fecha de llegada será el próximo 17 de septiembre. En iPhonehacks han recopilado los enlaces de descarga directo para los diferentes dispositivos que soportan la nueva versión del sistema operativo. Así que para quienes no desean esperar, ya pueden acceder a la versión Golden Master ...

    • Festigame Colombia 2014

      El festival de videojuegos, cultura gamer y entretenimiento familiar más grande de América Latina ha llegado a nuestro país. Festigame que es un evento creado en Chile en 2012, se ha convertido en el evento anual donde las marcas más importantes de la industria presentan sus últimos productos en el ...

    • Peter Griffin también tiene cuenta en Instagram

      El protagonista de la serie de humor, Padre de Familia, Peter Griffin ha inaugurado su presencia en la red social de fotografía con divertidas fotografías de su vida, y a pesar de ser un personaje de ficción ya ha superado los 200.000 seguidores en tan sólo dos semanas. Son unas fotos bastante divertidas, las ...

    • Manual y documentación de Node.js para Android

      Node.js se ha venido haciendo bastante popular en los últimos años, cada vez son más los usos que como desarrolladores web le damos a esta tecnología. La siguiente aplicación es el manual y la documentación de Node.js, que contiene los siguientes temas: About these Docs Synopsis Assertion Testing Buffer C/C++ Addons Child Processes Cluster Console Crypto Debugger DNS Domain Events File System Globals HTTP HTTPS Modules Net OS Path Process Punycode Query Strings Readline REPL Stream String Decoder Timers TLS/SSL TTY UDP/Datagram URL Utilities VM ZLIB

    • Star Wars Traceroute

      ¿Qué pasa cuando un ingeniero está muy desocupado? pues pasan cosas como esta: Mac y Linux Van a la consola y escriben: traceroute 216.81.59.173 Windows Buscan el CMD y escriben: tracert 216.81.59.173 El resultado es interesante y sorprendente. Si quieren ver la salida de la ejecución del comando, pueden ver el gist Ver más: Beagle Network

  • Comunicados - Notas de Prensa