Controllo dell'anno bisestile in Python

Determina se un anno è bisestile utilizzando i controlli di divisibilità standard in Python.

Prova nell'editor

Panoramica

Un anno bisestile contiene 366 giorni invece di 365, con un giorno in più aggiunto a febbraio. Serve per mantenere sincronizzato l'anno solare con l'anno astronomico.

La regola stabilisce che un anno è bisestile se è divisibile per 4, ad eccezione degli anni secolari (anni che terminano con 00), che devono essere anch'essi divisibili per 400.

Questo calcolo è implementato in Python utilizzando operatori logici combinati (`and`, `or`) e operatori modulo.

Codice e output di esecuzione

Algoritmo basato sulla divisibilità per verificare più anni di test inclusi i secoli.

leap_year.py
Prova nell'editor
def is_leap_year(year):
    # A year is leap if it is divisible by 4
    # and (not divisible by 100 or divisible by 400)
    return (year % 4 == 0 and year % 100 != 0) or (year % 400 == 0)

years = [2000, 2004, 1900, 2023, 2024]
for y in years:
    status = "Leap Year" if is_leap_year(y) else "Not a Leap Year"
    print(f"Year {y}: {status}")
Uscita terminale
Year 2000: Leap Year
Year 2004: Leap Year
Year 1900: Not a Leap Year
Year 2023: Not a Leap Year
Year 2024: Leap Year

Implementazione passo dopo passo

  • Convalida dei moduli di pianificazione, calendario e data/ora
  • Determinare accuratamente le differenze di età o data
  • Formule di calcolo delle finanze e degli interessi

Domande frequenti

Perché il 1900 non fu un anno bisestile?

Anche se il 1900 è divisibile per 4, termina con 00 (anno del secolo), quindi deve essere divisibile per 400 per essere un anno bisestile. Poiché 1900/400 non è un numero intero, non è un anno bisestile.

Argomenti correlati