随机输入日期计算星期几(1900年1月1日为基础)
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
随机输⼊⽇期计算星期⼏(1900年1⽉1⽇为基础)已知,1900年1⽉1⽇是星期1,⽤户随机输⼊年⽉⽇,计算星期⼏
第⼀版,纯python基础代码实现
1 year=int(input('year'))
2 month=int(input('month'))
3 day=int(input('day'))
4if year >=1900:#⼤于等于1900
5 ryear =1900
6 sum =0
7while ryear < year:#1901
8if ((ryear % 4 == 0) and (ryear %100 !=0))or(ryear % 400 == 0):#闰年
9 sum+=2
10else:
11 sum+=1
12 ryear+=1
13 #计算⽉份移动
14 mon = month
15 r_month = 1
16while r_month < month:#计算到mon⽉份1号
17if r_month in [1,3,5,7,8,10,12]:
18 sum +=3
19 sum = sum % 7
20 elif r_month in [4,6,9,11]:
21 sum +=2
22else:
23if (year % 4 == 0 and year %100 != 0) or (ryear % 400 == 0):
24 sum +=1
25else:
26 sum +=0
27 r_month+=1
28 #计算天
29 sumday = day -1
30 sum+=sumday
31 sum = sum % 7
32 #根据移动进⾏判断
33if sum ==1:
34 print('星期2')
35 elif sum ==2:
36 print('星期3')
37 elif sum ==3:
38 print('星期4')
39 elif sum ==4:
40 print('星期5')
41 elif sum ==5:
42 print('星期6')
43 elif sum ==6:
44 print('星期7')
45else:
46 print('星期1')
47else:#计算⼩于1990年
48 ye = year
49 year +=1
50 sum = 0
51while year<1900:
52if (year % 4 == 0 and year %100 !=0) or(year % 400 == 0):#闰年
53 sum+=2
54else:
55 sum +=1
56 year+=1
57 #计算⽉份移动
58 mo=month
59 month =month+1
60while month <=12:#计算到mon⽉份1号
61if month in [1,3,5,7,8,10,12]:
62 sum +=3
63 elif month in [4,6,9,11]:
64 sum +=2
65else:
66if (year % 4 == 0 and year %100!=0) or(year % 400 == 0):
67 sum +=1
68else:
69 sum +=0
70 month+=1
71 #计算天
72if mo in [1,3,5,7,8,10,12]:
73 sum += 31-day+1
74 elif mo in [4,6,9,11]:
75 sum += 30-day+1
76else:
77if (year % 4 == 0 and year %100 !=0) or (year % 400 == 0): 78 sum += 29-day+1
79else:
80 sum += 28-day+1
81 sum = sum % 7
82 #根据移动进⾏判断
83if sum ==1:
84 print('星期7')
85 elif sum ==2:
86 print('星期6')
87 elif sum ==3:
88 print('星期5')
89 elif sum ==4:
90 print('星期4')
91 elif sum ==5:
92 print('星期3')
93 elif sum ==6:
94 print('星期2')
95else:
96 print('星期1')
97 print('game over')
98
99星期⼏。