趣味算法入门;第三题:三天打鱼两天晒网

100个不同类型的python语言趣味编程题

在求解的过程中培养编程兴趣,拓展编程思维,提高编程能力。

第一部分:趣味算法入门;第三题

'''
3.三天打鱼两天晒网:某人从1990年1月1日起开始‘三天打鱼两天晒网’,问这个人在以后的某一天是‘打鱼’还是‘晒网’
提示:闰年为可以被4整除并且不能被100整除或者能被400整除,2月为29天,1年为366天;平年2月为28天
'''
#解题方法示例如下;
import time  #导入time模块,以用来计算程序运行的时间,可忽视
time.perf_counter()   #与time模块中计算时间有关,可忽视

#主体代码块如下:

try:   
    year=int(input('请输入年份,格式为1900'))
    month=int(input('请输入月份,格式为01').strip('0'))    
    day=int(input('请输入日期,格式为1'))
    i=0
    daymonth=0
    dayear = (year - 1900) * 365
    for oneyear in range(1900,year+1):
        if (oneyear % 4 == 0 and oneyear % 100 != 0) or oneyear % 400 == 0:
            dayear+=1
    for i in range(1,month):
        if i in [1,3,5,7,8,10,12]:
            daymonth = daymonth + 31
        elif i == 2:
            if (year % 4 == 0 and year % 100 != 0) or year % 400 == 0:
                daymonth = daymonth + 28
            else:
                daymonth = daymonth + 29
        else:
            daymonth = daymonth + 30
    totalday = dayear + daymonth + day
    if totalday % 5 in [1,2,3]:
        print('这一天是打鱼')
    else:
        print('这一天是晒网')
except:
    print('输入的类型有误')
                
                
print(time.perf_counter())  #打印出程序运行的时间,可忽视

#解本问题有多种方法,我只写了一种方法,读者可以自己尝试各种方法,再用time模块计算每种方法的运行时间。

如果你喜欢我的文章,请滑到下方点个推荐再走. ,以给我动力哦;转载请注名出处。然后..请多来做客鸭。

注:100个不同类型的python语言趣味编程题是参考100个不同类型的c语言趣味编程题而写,陆续会更新。欢迎大家分享出你们的方案。

posted @ 2020-03-14 11:30  虫萧  阅读(1429)  评论(0编辑  收藏  举报