年月日练习题 (5)
- 格式:docx
- 大小:14.77 KB
- 文档页数:5
未知驱动探索,专注成就专业
1
年月日练习题
题目一:计算生肖和星座
问题描述
根据输入的生日,计算出对应的生肖和星座。
输入
• 出生年份:4位整数,表示年份。
• 出生月份:1-12之间的整数。
• 出生日期:1-31之间的整数。
输出
• 生肖:根据输入的出生年份,确定生肖。
• 星座:根据输入的出生月份和出生日期,确定星座。
例子
输入:
2000
1
1
未知驱动探索,专注成就专业
2
输出:
生肖:龙
星座:摩羯座
解析
根据生肖和星座的规则,我们可以列出对应的生肖和星座日期范围:
生肖 日期范围
鼠 1900-01-01 ~ 1911-02-17, 1996-02-19 ~ 2099-02-04, …
牛 1912-02-06 ~ 1913-01-25, 1997-02-07 ~ 2021-02-03, …
虎 1914-01-26 ~ 1915-02-13, 1998-02-08 ~ 2022-02-05, …
兔 1916-02-14 ~ 1917-02-02, 1999-02-06 ~ 2023-02-04, …
龙 1918-02-03 ~ 1919-02-22, 2000-02-05 ~ 2024-01-24, …
蛇 1920-02-23 ~ 1921-02-10, 2001-01-24 ~ 2025-02-11, …
马 1922-02-11 ~ 1923-01-30, 2002-02-12 ~ 2026-01-31, … 未知驱动探索,专注成就专业
3
羊 1924-01-31 ~ 1925-02-18, 2003-02-01 ~ 2027-02-17, …
猴 1926-02-19 ~ 1927-02-07, 2004-02-22 ~ 2028-02-09, …
鸡 1928-02-08 ~ 1929-01-27, 2005-02-10 ~ 2029-01-28, …
狗 1930-01-28 ~ 1931-02-15, 2006-01-29 ~ 2030-02-16, …
猪 1932-02-16 ~ 1933-02-04, 2007-02-17 ~ 2031-02-05, …
星座 日期范围
水瓶座 1月20日 ~ 2月18日
双鱼座 2月19日 ~ 3月20日
白羊座 3月21日 ~ 4月19日
金牛座 4月20日 ~ 5月20日 未知驱动探索,专注成就专业
4
双子座 5月21日 ~ 6月21日
巨蟹座 6月22日 ~ 7月22日
狮子座 7月23日 ~ 8月22日
处女座 8月23日 ~ 9月22日
天秤座 9月23日 ~ 10月23日
天蝎座 10月24日 ~ 11月22日
射手座 11月23日 ~ 12月21日
魔羯座 12月22日 ~ 1月19日
根据上述规则,我们可以编写代码进行计算。下面是一个实现示例:
```python def calculate_zodiac(year): zodiacs = {0: ‘鼠’, 1: ‘牛’, 2: ‘虎’, 3: ‘兔’, 4:
‘龙’, 5: ‘蛇’, 6: ‘马’, 7: ‘羊’, 8: ‘猴’, 9: ‘鸡’, 10: ‘狗’, 11: ‘猪’} return zodiacs.get((year -
1900) % 12) 未知驱动探索,专注成就专业
5
def calculate_constellation(month, day): constellations = { ‘水瓶座’: ((1, 20), (2,
18)), ‘双鱼座’: ((2, 19), (3, 20)), ‘白羊座’: ((3, 21), (4, 19)), ‘金牛座’: ((4, 20), (5, 20)),
‘双子座’: ((5, 21), (6, 21)), ‘巨蟹座’: ((6, 22), (7, 22)), ‘狮子座’: ((7, 23), (8, 22)), ‘处女座’: ((8, 23), (9, 22)), ‘天秤座’: ((9, 23), (10, 23)), ‘天蝎座’: ((10, 24), (11, 22)), ‘射手座’: ((11, 23), (12, 21)), ‘摩羯座’: ((12, 22), (1, 19)) } for constellation, (start_date,
end_date) in constellations.items(): if (month, day) >= start_date and (month, day)
<= end_date: return constellation
def main(): year = int(input(