Cálculo del año bisiesto en Java
Cada cuatro (4) años, se agrega un año bisiesto al calendario agregando un día adicional, el 29 de febrero, al calendario. En el tutorial de hoy, aprenderemos cómo calcular el año bisiesto usando Java
.
Cálculo del año bisiesto usando Java
Generalmente, un año bisiesto ocurre cada cuatro años, aunque las regulaciones para los años bisiestos se establecen a continuación.
- Si un año es igualmente divisible por cuatro, es un año bisiesto.
- Los años divisibles por
100
, como1900
o2000
, no pueden ser años bisiestos si no son también divisibles por400
. Como resultado, mientras que los años1600
y2000
tuvieron años bisiestos, los años1700
,1800
y1900
no. - Es un año bisiesto si un año cumple los dos criterios anteriores.
Tengamos un ejemplo. Primero, la clase Escáner
se importa aquí para que el usuario pueda ingresar el año que desee.
El resto de los bloques if-else
se consolidan en una sola línea para verificar si el año de entrada es un año bisiesto. El siguiente código de ejemplo muestra cómo comprobar si un año es bisiesto o no.
Para comenzar, importe las siguientes bibliotecas.
import java.io.*;
import java.util.Scanner;
Para mantener el año especificado por el usuario, cree una variable de tipo int
llamada Useryear
en la clase main
.
int Useryear;
Inicializar un objeto de clase Escáner
. Luego, usando un objeto de la clase Escáner
llamado s
, tomamos información del usuario.
Scanner s = new Scanner(System.in);
Useryear = s.nextInt();
En la primera condición comprobamos si es un año bisiesto de siglo, y en la 2ª condición comprobamos si es un año bisiesto y no un año de siglo.
if ((Useryear % 400 == 0) || ((Useryear % 4 == 0) && (Useryear % 100 != 0)))
Si ambas condiciones se cumplen, imprimirá "El año dado es un año bisiesto"
. En caso contrario, un "Un año dado no es un año bisiesto"
.
Código fuente completo:
import java.io.*;
import java.util.Scanner;
public class leapyear {
public static void main(String[] args) {
int Useryear;
Scanner s = new Scanner(System.in);
Useryear = s.nextInt();
if ((Useryear % 400 == 0) || ((Useryear % 4 == 0) && (Useryear % 100 != 0))) {
System.out.println(Useryear + " : Given year is a leap year");
} else {
System.out.println(Useryear + " : Given year is not a leap year");
}
}
}
Producción :
// Input Year
2000
2000 : Given year is a leap year
// Input Year
2022
2022 : Given year is not a leap year
I have been working as a Flutter app developer for a year now. Firebase and SQLite have been crucial in the development of my android apps. I have experience with C#, Windows Form Based C#, C, Java, PHP on WampServer, and HTML/CSS on MYSQL, and I have authored articles on their theory and issue solving. I'm a senior in an undergraduate program for a bachelor's degree in Information Technology.
LinkedIn