-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy path[06_Func_31] 06_Func_★★★_Refactor.py
98 lines (98 loc) · 2.49 KB
/
[06_Func_31] 06_Func_★★★_Refactor.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
mname = ["Jan", "Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"]
dm=[0,31,28,31,30,31,30,31,31,30,31,30,31]
def read_date():
date=input().split()
d = int(date[0])
m = mname.index(date[1]) + 1
y = int(date[2])
return [d,m,y]
def zodiac(d1,m1):
if d1 >= 22 and m1==3 or d1 <=21 and m1==4 :
z1 = "Aries"
elif d1 >= 22 and m1==4 or d1 <=21 and m1==5 :
z1 = "Taurus"
elif d1 >= 22 and m1==5 or d1 <=21 and m1==6 :
z1 = "Gemini"
elif d1 >= 22 and m1==6 or d1 <=21 and m1==7 :
z1 = "Cancer"
elif d1 >= 22 and m1==7 or d1 <=21 and m1==8 :
z1 = "Leo"
elif d1 >= 22 and m1==8 or d1 <=21 and m1==9 :
z1 = "Virgo"
elif d1 >= 22 and m1==9 or d1 <=21 and m1==10 :
z1 = "Libra"
elif d1 >= 22 and m1==10 or d1 <=21 and m1==11 :
z1 = "Scorpio"
elif d1 >= 22 and m1==11 or d1 <=21 and m1==12 :
z1 = "Sagittarius"
elif d1 >= 22 and m1==12 or d1 <=20 and m1==1 :
z1 = "Capricorn"
elif d1 >= 21 and m1==1 or d1 <=20 and m1==2 :
z1 = "Aquarius"
elif d1 >= 21 and m1==2 or d1 <=21 and m1==3 :
z1 = "Pisces"
return z1
def days_in_feb(y1):
days_in_feb = 28
if y1 % 400 == 0 or y1 % 100 != 0 and y1%4 == 0 :
days_in_feb = 29
return days_in_feb
def days_in_month(m,y):
if m==2:
return days_in_feb(y)
else:
return dm[m]
def days_in_between(d1,m1,y1,d2,m2,y2):
days = 0
if m1 < 12 :
days += 31
if m1 < 11 :
days += 30
if m1 < 10 :
days += 31
if m1 < 9 :
days += 30
if m1 < 8 :
days += 31
if m1 < 7 :
days += 31
if m1 < 6 :
days += 30
if m1 < 5 :
days += 31
if m1 < 4 :
days += 30
if m1 < 3 :
days += 31
if m1 < 2 :
days += days_in_feb(y1)
if m2 > 1 :
days += 31
if m2 > 2 :
days += days_in_feb(y2)
if m2 > 3 :
days += 31
if m2 > 4 :
days += 30
if m2 > 5 :
days += 31
if m2 > 6 :
days += 30
if m2 > 7 :
days += 31
if m2 > 8 :
days += 31
if m2 > 9 :
days += 30
if m2 > 10 :
days += 31
if m2 > 11 :
days += 30
days += (days_in_month(m1,y1) - d1 + 1) + int((y2 - y1 - 1)*365.25) + (d2 - 1)
return days
def main():
d1,m1,y1 = read_date()
d2,m2,y2 = read_date()
print(zodiac(d1,m1),zodiac(d2,m2))
print(days_in_between(d1,m1,y1,d2,m2,y2))
exec(input().strip())