您的位置:首页 > 其它

根据下列信息计算在1901年1月1日至2000年12月31日间共有多少个星期天落在每月的第一天上?

2015-09-06 23:25 417 查看

-- coding: utf-8 --

“””

Created on Sun Sep 06 08:51:53 2015

@author: MONKEY

根据下列信息计算在1901年1月1日至2000年12月31日间共有多少个星期天落在每月的第一天上?

a) 1900.1.1是星期一

b) 1月,3月,5月,7月,8月,10月和12月是31天

c) 4月,6月,9月和11月是30天

d) 2月是28天,在闰年是29天

e) 公元年数能被4整除且又不能被100整除是闰年

f) 能直接被400整除也是闰年

输出格式:

一个正整数

对了,答案是171.

"""

num=0
day=2

for year in range(1901,2001):
if (year%4==0 and year%100!=0) or (year%400==0): #判断为闰年
for month in range(1,13):                    #对于12个月各自进行判断相#加
if month==2:
day+=1
elif month==4 or month==6 or month==9 or month==11:
day+=2
else:
day+=3

if day>7:
day%=7
# print day
if day==7:                                #若为星期天,则加一
num+=1

else:                                             #若不是闰年
for month in range(1,13):
if month==2:
day+=0
elif month==4 or month==6 or month==9 or month==11:
day+=2
else:
day+=3

if day>7:
day%=7
#print day
if day==7:
num+=1
# print day

print num
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: