已知,1900年1月1日是星期1,用户随机输入年月日,计算星期几

第一版,纯python基础代码实现

1 year=int(input('year')) 2 month=int(input('month'))

 3 day=int(input('day'))
 4 if year >=1900:#大于等于1900
 5     ryear =1900
 6     sum =0
 7     while ryear < year:#1901
 8         if ((ryear % 4 == 0) and (ryear %100 !=0))or(ryear % 400 == 0):#闰年
 9             sum+=2
10         else:
11             sum+=1
12         ryear+=1
13     #计算月份移动
14     mon = month
15     r_month = 1
16     while r_month < month:#计算到mon月份1号
17         if 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
22         else:
23             if (year % 4 == 0 and year %100 != 0) or (ryear % 400 == 0):
24                 sum +=1
25             else:
26                 sum +=0
27         r_month+=1
28     #计算天
29     sumday = day -1
30     sum+=sumday
31     sum = sum % 7
32     #根据移动进行判断
33     if 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')
45     else:
46         print('星期1')
47 else:#计算小于1990年
48     ye = year
49     year +=1
50     sum = 0
51     while year<1900:
52         if (year % 4 == 0 and year %100 !=0) or(year % 400 == 0):#闰年
53             sum+=2
54         else:
55             sum +=1
56         year+=1
57     #计算月份移动
58     mo=month
59     month =month+1
60     while month <=12:#计算到mon月份1号
61         if month in [1,3,5,7,8,10,12]:
62             sum +=3
63         elif month in [4,6,9,11]:
64             sum +=2
65         else:
66             if (year % 4 == 0 and year %100!=0) or(year % 400 == 0):
67                 sum +=1
68             else:
69                 sum +=0
70         month+=1
71     #计算天
72     if 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
76     else:
77         if (year % 4 == 0 and year %100 !=0) or (year % 400 == 0):
78             sum += 29-day+1
79         else:
80             sum += 28-day+1
81     sum = sum % 7
82     #根据移动进行判断
83     if 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')
95     else:
96         print('星期1') 97 print('game over')
98
99 星期几

转载于:https://www.cnblogs.com/rain-chenwei/p/rain_fall_in_love_with_python.html

随机输入日期计算星期几(1900年1月1日为基础)相关推荐

  1. Java——计算用户输入的日期离1900年1月1日相距多少天

    题目:计算用户输入的日期离1900年1月1日相距多少天 解析: 用户输入日期,所以需要使用Scanner获取用户键盘输入数据 计算输入日期距离xxxx多少天,所以就是获取相差年份的天数+相差月份天数+ ...

  2. C语言/打印日历,用户输入年分和月份两个变量,系统计算该月份的1号是星期几,并计算该月有多少天。最后打印出该日历。已知:1900年1月1日是星期一

    打印日历,用户输入年分和月份两个变量,系统计算该月份的1号是星期几,并计算该月有多少天.最后打印出该日历.已知:1900年1月1日是星期一 C语言 #define _CRT_SECURE_NO_WAR ...

  3. 计算用户输入的日期离1900年1月1日相距多少天。日期要大于1900(注意闰年,每个月份天数不一样)

    import java.util.Scanner;public class test {public static void main(String[] args) {//计算用户输入的日期离1900 ...

  4. c++ 计算某个日期是星期几,判断某年某月一号是星期几

    第一种方法 基姆拉尔森计算公式 W = (d + 2 * m + 3 * (m + 1) / 5 + y + y / 4 - y / 100 + y / 400) mod 7 基姆拉尔森计算公式 W ...

  5. 2.给出距离1900年1月1日的天数,求日期

    1 #include <iostream> 2 #include <assert.h> 3 4 5 //判断是否闰年 6 bool IsLeapYear(unsigned in ...

  6. 题目:输入某年某月某日,判断当日是星期几? 提示:1900年1月1日为星期一

    题目:输入某年某月某日,判断当日是星期几? 提示:1900年1月1日为星期一 package com.lc.chapter032;import java.util.Calendar; import j ...

  7. 根据当前日期进行以下方面的处理: 1、取得日期的年份、月份、天、时、分、秒,并转换成大写日期格式 如:2013年8月17日 20时30分20秒 2、根据日期的不同时间段,做问候语: 早上8:00-12

    根据当前日期进行以下方面的处理: 1.取得日期的年份.月份.天.时.分.秒,并转换成大写日期格式 如:2013年8月17日 20时30分20秒 2.根据日期的不同时间段,做问候语: 早上8:00-12 ...

  8. (C++)设计一个日期类Date,包括年、月、日等私有数据成员。要求实现日期的基本运算,包括某日期加上指定天数、某日期减去指定天数、两个日期相差的天数等。

    C++面向对象程序设计课后作业第239页第5题 题目要求:设计一个日期类Date,包括年.月.日等私有数据成员.要求实现日期的基本运算,包括某日期加上指定天数.某日期减去指定天数.两个日期相差的天数等 ...

  9. python设计一个date类数据成员有年月日_设计一个日期类Date,包括年、月、日等私有成员。要求实现日期的基本运算,例如某日期加上天数或减去天数...

    /*设计一个日期类Date,包括年.月.日等私有成员.要求实现日期的基本运算,例如某日期加上天数或减去天数 ,两日期相减的天数等. 实现要求: 实现运算符加与减的重载 设计一个日期类Date,包括年. ...

最新文章

  1. 使用Python,OpenCV检测摄像机到标记对象的距离
  2. gg.gap:ggplot阶截断坐标轴的优秀完美解决方案
  3. 求过去9天的相同时刻的平均值的sql(MYSQL)语句(去掉最大值,最小值)
  4. UA MATH636 信息论5 信道编码定理
  5. wxWidgets:wxMouseEvent类用法
  6. java 常量变量使用_java常量和变量入门教程
  7. Vue — 第五天(路由)
  8. ubuntu-server-18.04 设置开机启动脚本
  9. luoguP1742 最小圆覆盖
  10. flutter 弹框 dialog,flutter提示框
  11. 检查电脑链接的网络是否支持ipv6
  12. IDEA设置好看的字体
  13. html更改超链接下划线颜色,超链接去掉下划线_WORD中不取消超链接,只改超链接的颜色和去掉下划线...
  14. php导出word文档图片不显示,word文档几种不显示图片的解决方法
  15. 蚂蚁安全键盘空白或应该显示安全键盘却显示的系统键盘的问题(iOS中时间佛历如何转换为公历)
  16. oracle误删了表怎么恢复数据,oracle误删除表或者表数据的恢复方法总结
  17. 笔记本合上盖子不能从睡眠中唤醒解决办法
  18. <计算机视觉 六> 深度学习目标检测模型的评估标准
  19. 匈牙利算法编程c语言,华为oj之素数伴侣---匈牙利算法
  20. seo网站推广方法简介

热门文章

  1. JsonProperty.Access.READ_ONLY 导致查询字段为null
  2. 推广你的网站,从学会写软文开始
  3. 计算机网络——域名系统(DNS)
  4. 163企业邮箱价格费用标准是多少?
  5. Add User for Power Apps 给PowerApps 添加账号
  6. 计算机主板定位孔尺寸,775针主板上四个 CPU散热器固定孔 的孔距 分别是多少...
  7. 塑料制品行业市场产业集中度分析预测及经营状况可行性研究
  8. 深度优先搜索Or深度优先遍历详解
  9. 如何应对面试官:什么场景中会用到java多线程?
  10. 前端从入门到大前端学习流程总结