🎉 Parabéns! 🎉
Você resolveu a tarefa brilhantemente! Foi difícil, mas você encontrou a solução certa. Você está um passo mais perto de dominar a programação! Continue assim.
ProgerLib Python para todos
Imagine que você está criando um aplicativo de calendário simples. Uma das funções mais importantes de tal aplicativo — Não permitir que o usuário insira datas inexistentes. Por exemplo, 30 de fevereiro ou 31 de abril.
rnEscreva um programa que peça ao usuário para inserir três números: dia, mês e ano. Sua tarefa — Verificar se a data inserida é real. O programa deve levar em consideração que em diferentes meses há diferentes números de dias, bem como que existem anos bissextos em que fevereiro tem 29 dias.
rnRegras para a verificação:
rnO programa deve exibir "data correta" se a data existir, e "data incorreta" caso contrário.
Dia (número inteiro)
Mês (número inteiro)
Ano (número inteiro)
O resultado da verificação (linha)
29
2
2024
A data correta
# Запрашиваем у пользователя три числа: день, месяц, год
day = int(input())
month = int(input())
year = int(input())
# Проверяем базовую корректность введенных данных
if month < 1 or month > 12:
print("Некорректная дата")
else:
# Проверяем корректность дня для каждого месяца
# Месяцы с 31 днем: январь(1), март(3), май(5), июль(7), август(8), октябрь(10), декабрь(12)
if month in [1, 3, 5, 7, 8, 10, 12]:
if day < 1 or day > 31:
print("Некорректная дата")
else:
print("Корректная дата")
# Месяцы с 30 днями: апрель(4), июнь(6), сентябрь(9), ноябрь(11)
elif month in [4, 6, 9, 11]:
if day < 1 or day > 30:
print("Некорректная дата")
else:
print("Корректная дата")
# Февраль (2) - особый случай
elif month == 2:
# Проверяем, является ли год високосным
is_leap_year = False
if (year % 4 == 0 and year % 100 != 0) or (year % 400 == 0):
is_leap_year = True
# Проверяем корректность дня для февраля
if is_leap_year:
# Високосный год - до 29 дней
if day < 1 or day > 29:
print("Некорректная дата")
else:
print("Корректная дата")
else:
# Обычный год - до 28 дней
if day < 1 or day > 28:
print("Некорректная дата")
else:
print("Корректная дата")
🎉 Parabéns! 🎉
Você resolveu a tarefa brilhantemente! Foi difícil, mas você encontrou a solução certa. Você está um passo mais perto de dominar a programação! Continue assim.
AD
Publicidade
Executando seu código...