Retour aux défis
Facile 0 résolus 0 % de réussite

Année bissextile

Vérifiez si une année suit la règle des années bissextiles du calendrier grégorien.

Ce que vous allez apprendre

  • Combiner des règles de divisibilité avec and/or
  • Appliquer l'exception des siècles
  • Écrire une condition claire sur une ligne

Problème

Une année divisible par 4 est bissextile, sauf si elle est également divisible par 100. Les années divisibles par 400 sont bissextiles malgré cette exception. Appliquez cette règle arithmétique à chaque année autorisée en entrée.

Implémentez leap_year(year).

Entrée

year : L'année à vérifier.

Sortie

Retournez true si l'année est bissextile, sinon false.

Contraintes

1 ≤ year ≤ 9999.

Exemples

Exemple 1
Entrée :
year = 2024

Sortie attendue :
expected = True
Entrée :
long long year = 2024;

Sortie attendue :
bool expected = true;
Entrée :
long year = 2024;

Sortie attendue :
bool expected = true;

Explication

2024 est divisible par 4 et non par 100.

Exemple 2
Entrée :
year = 2100

Sortie attendue :
expected = False
Entrée :
long long year = 2100;

Sortie attendue :
bool expected = false;
Entrée :
long year = 2100;

Sortie attendue :
bool expected = false;

Explication

2100 est divisible par 100 mais pas par 400, donc l'exception du siècle s'applique.

Comment l'aborder

Essayez d'abord seul, puis ouvrez les indices un par un.

Indice 1

La plupart des années suivent la règle divisible par 4, mais les siècles font exception.

Indice 2

Une année divisible par 400 reste une année bissextile, même si elle est aussi divisible par 100.

Indice 3

Teste l’exception avant de rejeter les années de siècle, sinon tu risques de mal classer des années comme 2000.

Complexité attendue

temps O(1), espace supplémentaire O(1)

Références

Ce défi a été adapté pour CodeUtility. Suivez l'énoncé et les contraintes ci-dessus.

Apprenez des autres

Solutions de la communauté

Aucune solution publiée pour l'instant. Résolvez ce défi pour partager la première.