Verificador de ano bissexto em Python

Determine se um ano é bissexto usando verificações de divisibilidade padrão em Python.

Experimente no Editor

Visão geral

Um ano bissexto contém 366 dias em vez de 365, com um dia extra adicionado a fevereiro. Ocorre para manter o ano civil sincronizado com o ano astronômico.

A regra estabelece que um ano é bissexto se for divisível por 4, exceto os anos centenários (anos terminados em 00), que também devem ser divisíveis por 400.

Este cálculo é implementado em Python usando operadores lógicos combinados (`and`, `or`) e operadores de módulo.

Saída de código e execução

Algoritmo baseado em divisibilidade para verificar vários anos de teste, incluindo anos centenários.

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}")
Saída terminal
Year 2000: Leap Year
Year 2004: Leap Year
Year 1900: Not a Leap Year
Year 2023: Not a Leap Year
Year 2024: Leap Year

Implementação passo a passo

  • Validação de módulos de agendamento, calendário e data e hora
  • Determinar diferenças de idade ou data com precisão
  • Fórmulas de cálculo de finanças e juros

Perguntas frequentes

Por que 1900 não foi um ano bissexto?

Embora 1900 seja divisível por 4, termina em 00 (ano do século), portanto deve ser divisível por 400 para ser um ano bissexto. Como 1900/400 não é um número inteiro, não é um ano bissexto.

Tópicos Relacionados