趣味算法入门;第三题:三天打鱼两天晒网
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语言趣味编程题而写,陆续会更新。欢迎大家分享出你们的方案。