feed twitter facebook LinkedIn facebook

Java » Año bisiesto en Java

Febrero 18, 2007 por Víctor Cuervo . 37733 visitas 75 Comentarios Imprimir Imprimir

Los años bisiestos son aquellos que duran 366 días en vez de los 365 normales. El día de más que tiene el año es el 29 de febrero. Esto sucede para corregir el desfase real de la duración de un año, que es de 365 días y 6 horas.


Para saber si un año es bisiesto se puede aplicar una simple formula, la cual dice que un año es bisiesto si es divisible por cuatro, excepto los principios de año (los divisibles por 100), que para ser bisiestos deben de ser divisibles también por 400.

Si tenemos que resolver esto con un lenguaje de programación como Java solo nos harían falta unas pequeñas líneas de código para llevar a cabo la definición anterior. Sería algo así como:

if ((anio % 4 == 0) && ((anio % 100 != 0) || (anio % 400 == 0)))
	System.out.println("El año es bisiesto");
else
	System.out.println("El año no es bisiesto");

Pero Java nos ofrece una forma todavía más sencilla de resolver si un año es bisiesto. Y es que nos proporciona la clase GregorianCalendar y en concreto el método .isLeapYear(anio). Este método devolverá true o false, según corresponda.

De esta manera el código sería el siguiente:

GregorianCalendar calendar = new GregorianCalendar();

if (calendar.isLeapYear(anio))
	System.out.println("El año es bisiesto");
else
	System.out.println("El año no es bisiesto");

Ver el ejemplo | Descargar el código

Foro sobre Java Util
Foro sobre Java Util
tags: ,

Artículos relacionados:

75 comentarios »

Redifusión RSS de los comentarios de la entrada. TrackBack URI

1 6 7 8
  1. diego
    Agosto 18, 2011 #

    using System;
    class añobi
    {
    static void Main()
    {
    //Declarar Variables:
    int a;
    Console.WriteLine (“Operacion para saber si el año es Bisiesto \n”);
    Console.WriteLine (“<<<<<<<<<<<<<<<<<<<<>>>>>>>>>>>>>>>>>> \n”);
    {
    Console.Write (“Ingrese el año:”);
    a=Convert.ToInt32(Console.ReadLine());
    //Realizar la operacion y mostrar el resultado:
    if ((a % 4 == 0 && a % 100 != 0) || a % 400 == 0)

    {
    Console.WriteLine(“El año es Bisiesto”);
    }
    else
    {
    Console.WriteLine(“El año no es Bisiesto”);
    }

    //Pausar:
    Console.ReadKey();

    }
    }
    }

  2. yo
    Noviembre 8, 2011 #

    muy bueno

  3. trasnochados
    Abril 30, 2012 #

    Excelente. Me fue de mucha ayuda. Gracias.

  4. xiquito
    Mayo 7, 2012 #

    gracias por su ayudad me sirvió mucho

  5. Víctor Cuervo
    Mayo 7, 2012 #

    @trasnochados, @xiquito,

    Me alegro mucho de que os sirviera. :-D

1 6 7 8

Deje un comentario

XHTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

*