与えられた西暦を示す数字がうるう年であるかを判定します。
うるう年の判定:
・西暦が4で割り切れる年はうるう年
・西暦が4で割り切れる年のうち、100でも割り切れる年はうるう年としない
・西暦が4で割り切れる年のうち、100で割り切れ、400でも割り切れる年はうるう年
ちょっとややこしいけど・・・
ソースコード:
# -*- coding: utf-8 -*-
# 確認したい西暦を入力
int_year = int(input("Enter Check year: "))
# うるう年の判定:
# 西暦が4で割り切れる年をうるう年
# 西暦が4で割り切れるが100で割り切れる年はうるう年ではない
# 西暦が100で割り切れて、かつ400で割り切れる年はうるう年
# 西暦が100で割り切れて、かつ400で割り切れる年はうるう年
if (int_year % 100 == 0) and (int_year % 400 == 0) :
print("{0} はうるう年です。".format(int_year))
# 西暦が4で割り切れるが,100で割り切れない
elif (int_year % 4 ==0) and (int_year % 100 != 0):
print("{0} はうるう年です。".format(int_year))
else:
print("{0} はうるう年ではありません。".format(int_year))
実行結果:
$./example.py
Enter Check year: 2000
2000 はうるう年です。
$
$./example.py
Enter Check year: 2003
2003 はうるう年ではありません。
$
$./example.py
Enter Check year: 2100
2100 はうるう年ではありません。
$
$./example.py
Enter Check year: 2104
2104 はうるう年です。
$
備考:
Ubuntu 20.04.2 LTS
Python 3.8.10