【python】编程语言入门经典100例--4
admin
2023-01-28 13:20:00
0

  4#题目:输入某年某月某日,判断这一天是这一年的第几天?


代码:

  2 year = int(input('请输入年份:'))
  3 month = int(input('请输入月份:'))
  4 day = int(input('请输入日期:'))
  5 
  6 rmon = [31,29,31,30,31,30,31,31,30,31,30,31]
  7 
  8 pmon = [31,28,31,30,31,30,31,31,30,31,30,31]
  9 j = 0
 10 tmp = 0
 11 if ((year%4 == 0 and year%100 != 0) or year%400 == 0):
 12     for i in rmon:
 13         if (j < month):
 14             tmp += rmon[j]
 15             j += 1
 16         else:
 17             break
 18     print('你输入的年份是闰年,输入的时间是这一年的第%d天'%(tmp+day))
 19 else:
 20     for i in pmon:
 21         if (j < month):
 22             tmp += pmon[j]
 23             j += 1
 24         else:
 25             break
 26     print('你输入的年份是平年,输入的时间是这一年的第%d天'%(tmp+day))

运行结果:

[root@HK code_100]# python code_4.py
请输入年份:2016
请输入月份:4
请输入日期:20
你输入的年份是闰年,输入的时间是这一年的第141天
[root@HK code_100]# 
[root@HK code_100]# python code_4.py
请输入年份:2015
请输入月份:4
请输入日期:20
你输入的年份是平年,输入的时间是这一年的第140天
[root@HK code_100]#

代码解释:

  2 year = int(input('请输入年份:'))   #接收输入的日期,并且转换成int类型
  3 month = int(input('请输入月份:'))
  4 day = int(input('请输入日期:'))
  5 
  6 rmon = [31,29,31,30,31,30,31,31,30,31,30,31]  #闰年的每月天数
  7 
  8 pmon = [31,28,31,30,31,30,31,31,30,31,30,31]  #平年的每月天数
  9 j = 0
 10 tmp = 0
 11 if ((year%4 == 0 and year%100 != 0) or year%400 == 0):  #判断输入的年份为闰年
 12     for i in rmon:    #  for循环遍历整个rmon
 13         if (j < month):  #判断累加参数j小于输入的月份,如果j>month,没有必要累加这个月的天数
 14             tmp += rmon[j]   #符合条件的月份天数累加
 15             j += 1    #j=0 step为1递增
 16         else:
 17             break   # 当循环的月份大于输入的月份时跳出循环
 18     print('你输入的年份是闰年,输入的时间是这一年的第%d天'%(tmp+day))   #  格式化打印结果
 19 else:                                  
 20     for i in pmon:               # 与上面的代码解释相同,是平年的计算,差别在2月的天数
 21         if (j < month):
 22             tmp += pmon[j]
 23             j += 1
 24         else:
 25             break
 26     print('你输入的年份是平年,输入的时间是这一年的第%d天'%(tmp+day))
 27


相关内容

热门资讯

美军被疑隐瞒对伊作战伤亡 【环球时报综合报道】美国国防部21日发表声明说,一名美军士兵17日在伊朗针对位于约旦的穆沃费格萨勒提...
OpenAI模型“越狱”攻击,... 一家美国公司遭到美国AI攻击,而提供保护的竟是一款中国人工智能工具。AI工具平台Hugging Fa...
南航第十二架C919国产大飞机... 广州7月21日电 (记者 郭军)7月21日,一架尾号为B-659G的国产大飞机飞抵广州白云国际机场,...
无人艇第一股,要来了 那个被资本追捧的“无人艇第一股”,要来了。 2017年冬天的一个夜晚,港珠澳大桥附近的海面上,81条...
三一锂能取得电池包专利提升电芯... 国家知识产权局信息显示,三一锂能有限公司取得一项名为“电池包”的专利,授权公告号CN22453717...
价格为何下滑?市场竞争力为何不... 记者采访西瓜种植主产区河南开封等地如何种得好,又能卖得好(经济聚焦)本报记者 常 钦 《人民日报》(...
“镐山”之后美再威胁袭伊基础设... 截至7月22日,美军已连续11晚对伊朗发动袭击,伊方对美中东地区军事基地的反击也未停止。与此同时,美...
美国“痛失”杨植麟,这是历史性... 杨植麟的月之暗面创造了Kimi K3,轰动整个世界。他是近年来第一个放弃了美国机会、回中国创业,并且...
铭显光电取得LED显示屏加工夹... 国家知识产权局信息显示,上海铭显光电科技有限公司取得一项名为“一种LED显示屏加工夹具”的专利,授权...
大盘承压依旧登顶,vivo拿下... 7月22日消息,市场调研机构Omdia发布2026年第二季度印度智能市场报告,数据显示本季度印度手机...