Rutas
/
Java
Java
/
Ejercicios
/
Año bisiesto
Año bisiesto

Año bisiesto

Fácil

Introducción

Un año bisiesto (en el calendario gregoriano) se da:

  • En todos los años que sean divisibles por 4 de forma exacta.
  • Salvo que el año sea divisible por 100 de forma exacta, en cuyo caso solo es bisiesto si además es divisible por 400 de forma exacta.

Algunos ejemplos:

  • 1997 no fue un año bisiesto, ya que no es divisible por 4.
  • 1900 no fue un año bisiesto, ya que no es divisible por 400.
  • ¡2000 sí fue un año bisiesto!
Note

Para disfrutar de una explicación encantadora de cuatro minutos sobre todo el fenómeno de los años bisiestos, echa un vistazo a este vídeo de YouTube.

Instrucciones

Tu tarea consiste en determinar si un año dado es un año bisiesto.

Implementación

Antes de empezar, asegúrate de que sabes escribir código que pueda superar los casos de prueba. Para más contexto, echa un vistazo a este tutorial.

La mayoría de los ejercicios de Java incluyen varios casos de prueba. Estos casos están estructurados para facilitar un proceso muy útil conocido como desarrollo guiado por pruebas (TDD). El TDD consiste en repetir un ciclo estructurado que ayuda a los desarrolladores a construir funcionalidad compleja poco a poco en lugar de hacerlo todo de una vez. Ese ciclo se puede describir así:

  1. Añade una prueba que describa una parte de la funcionalidad deseada que tu código todavía no tiene.
  2. Ejecuta las pruebas para comprobar que esta prueba recién añadida falla.
  3. Actualiza tu código actual hasta que:
    • Todas las pruebas antiguas sigan pasando;
    • La nueva prueba también pase.
  4. Limpia tu código y asegúrate de que todas las pruebas sigan pasando. Normalmente esto implica cambiar el nombre de las variables, eliminar fragmentos de lógica duplicados, quitar los registros sobrantes, etc.
  5. Vuelve al paso 1 hasta que hayas implementado toda la funcionalidad deseada.

Los archivos de prueba de este track contienen todas las pruebas que tu solución debe superar para considerarse válida. A primera vista, eso no parece compatible con el ciclo descrito antes, en el que las pruebas se escriben de una en una. Sin embargo, la herramienta que usamos para escribir nuestras pruebas, JUnit, ofrece una anotación @Disabled que se puede usar para omitir temporalmente una prueba ya escrita. Con esta anotación, nos aseguramos de que los archivos de prueba que te entregamos cumplan las siguientes reglas:

  • La primera prueba de cualquier archivo de prueba no se omite de forma predeterminada.
  • Todas las pruebas excepto la primera de cualquier archivo de prueba se omiten de forma predeterminada.

Esto te permite simular el ciclo del TDD siguiendo estos pasos ligeramente modificados:

  1. Ejecuta las pruebas para comprobar que, como máximo, falla una prueba.
  2. Actualiza tu código actual hasta que pasen todas las pruebas no omitidas.
  3. Limpia tu código y asegúrate de que todas las pruebas no omitidas sigan pasando.
  4. Elimina la anotación @Disabled que está más arriba en el archivo de prueba.
  5. Vuelve al paso 1 hasta que no quede ninguna prueba omitida y todas pasen.
Editar en GitHub El enlace se abre en una ventana o pestaña nueva
Java Exercism

¿Listo para empezar Año bisiesto?

Regístrate en Exercism para aprender y dominar Java con 26 conceptos158 ejercicios y mentoría humana real, todo gratis.

¡Análisis en profundidad de Año bisiesto!

Sumérgete en los distintos algoritmos y enfoques que puedes usar para resolver Año bisiesto, mientras Jeremy y Erik exploran interesantes soluciones de la comunidad en 10 lenguajes diferentes en Exercism.