欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

Python2_闰年计算器

程序员文章站 2024-01-24 23:12:22
Python2_闰年计算器先上一个未优化的程序:year=input("请输入一个年份:")year_int=int(year)if year_int%4==0: if year_int%100==0: if year_int%400==0: print(year+"是闰年") else: print(year+"不是闰年") else: print(year+"是闰年")else:...

Python2_闰年计算器

先上一个未优化的程序:

year=input("请输入一个年份:")
year_int=int(year)
if year_int%4==0:
    if year_int%100==0:
        if year_int%400==0:
            print(year+"是闰年")
        else:
            print(year+"不是闰年")
    else:
        print(year+"是闰年")
else:
    print(year+"不是闰年")

这个程序还是很好理解的,但值得一提的是在Python中,缩进十分重要,不同于C等语言使用{ },python利用缩进来判断else跟着的是哪个if

再上一个经布尔变量优化过的程序:

year=input("请输入一个年份:")
year_int=int(year)
is_leap=False
if year_int%4==0:
    if year_int%100==0:
        if year_int%400==0:
            is_leap=True
        else:
            is_leap=False
    else:
        is_leap=True
else:
    is_leap=False
if is_leap:
    print(year+"是闰年")
else:
    print(year+"不是闰年")

但看起来还是太长,那么:

year=input("请输入一个年份:")
year_int=int(year)
is_leap=False
if year_int%400==0:
    is_leap=True
elif year_int%4==0:
    if year_int%100!=0:
        is_leap=True
if is_leap:
    print(year+"是闰年")
else:
    print(year+"不是闰年")

这个算法的思路是,找到使年份为闰年的条件,是布尔变量值变为真。值得注意的是,python中只能用elif而不能出现else if,这与这个语言在设计时追求的精简有关。

明天见!

本文地址:https://blog.csdn.net/LUSIA_TT/article/details/107167372