算法设计——基姆拉尔森计算公式:计算几月几号是星期几
基姆拉尔森计算公式
W=(d+2*m+3*(m+1)/5+y+y/4-y/100+y/400+1)%7
- 其中,W表示算出的星期的数字表示:0:星期日;1:星期一……
- d表示日期,m表示月份,y表示年份
代码实现
#include<iostream>
using namespace std;
int main()
{int N,i;int Y, M, D,W;//对于基姆拉尔森计算星期公式而言,最后的取值0表示星期日,1表示星期一,依次类推,以下用数组存储对应的日期,然后输出对应的星期// 应将数组以地址的形式存储,否则会显示错误char *weekday[7] = { "Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday" };while (cin >> N&&N > 0){for (i = 0; i < N; i++){cout << "请输出需要计算的年月日:" << endl;cin >> Y >> M >> D;//把一月和二月看成是上一年的十三月和十四月,例:如果是2004-1-10则换算成:2003-13-10来代入公式计算if (M == 1 || M == 2){M = (M == 1 ? 13 : 14);Y = Y - 1;}//基姆拉尔森计算星期公式W = (D + 2 * M + 3 * (M + 1) / 5 + Y + Y / 4 - Y / 100 + Y / 400 + 1) % 7;cout << weekday[W]<< endl;}if (i == N)break;}
}
// 如果要以对应的数字表示星期几,则用以下代码
/* if(W==0)W=7;
*/
算法设计——基姆拉尔森计算公式:计算几月几号是星期几相关推荐
- c语言输入年月日输出星期几,基姆拉尔森计算公式 (根据输入的年月日输出星期几)...
基姆拉尔森计算公式 W= (d+2*m+3*(m+1)/5+y+y/4-y/100+y/400) mod 7 在公式中d表示日期中的日数,m表示月份数,y表示年数. 注意:在公式中有个与其他公式不同的 ...
- python 用基姆拉尔森计算公式求出某一天是星期几
代码: RiQi = input("输入以下格式日期\"year-month-day\":") #输入日期 pingnian = [31,28,31,30,31 ...
- 根据日期计算星期几 -- 基姆拉尔森计算公式
首先看下百度百科的基姆拉尔森计算公式定义: 基姆拉尔森计算公式 W= (d+2*m+3*(m+1)/5+y+y/4-y/100+y/400) mod 7 在公式中d表示日期中的日数,m表示月份数,y ...
- 根据年月日计算是星期几的函数,基姆拉尔森计算公式
算法如下: 基姆拉尔森计算公式 W= (d+2*m+3*(m+1)/5+y+y/4-y/100+y/400) mod 7 在公式中d表示日期中的日数,m表示月份数,y表示年数. 注意:在公式中有个与 ...
- C语言根据日期(年,月,日)判断星期几(使用基姆拉尔森计算公式)
C语言根据日期判断星期几(使用基姆拉尔森计算公式) 算法如下: 基姆拉尔森计算公式 W= (d+2*m+3*(m+1)/5+y+y/4-y/100+y/400) mod 7 在公式中d表示日期中的日 ...
- 基姆拉尔森计算公式:计算每个月1号是周几的公式
算法如下:基姆拉尔森计算公式W= (d+2*m+3*(m+1)/5+y+y/4-y/100+y/400) mod 7在公式中d表示日期中的日数,m表示月份数,y表示年数.注意:在公式中有个与其他公式不 ...
- HDU 6112 今夕何夕【2017百度之星】【日期模拟计算】【基姆拉尔森计算公式】【蔡勒公式】
今夕何夕 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total Submi ...
- C语言根据日期计算星期——基姆拉尔森计算公式
公式 基姆拉尔森计算公式 w = ( day + 2month +3(month+1)/5 + year + year/4 - year/100 +year/400)%7 根据已知公元1年1月1日星期 ...
- 基姆拉尔森计算公式(根据日期判断星期几)
//基姆拉尔森计算公式根据日期判断星期几 void CalculateWeekDay(int y, int m,int d){if(m==1||m==2) m+=12,y--;int iWeek = ...
最新文章
- 服务注册发现consul之四: 分布式锁之四:基于Consul的KV存储和分布式信号量实现分布式锁...
- Express中间件的应用-路由保护(登录限制)、网站维护、页面404
- Codeforces Round #552 (Div. 3) —— B. Make Them Equal
- themleft模板库_Thymeleaf模板引擎常用总结
- 2008-10-13 XEIM 2.0 beta 准时发布
- 11 如何通过 “副本传输” 传输从DEV到QAS的请求号
- react项目开发问题整理
- blockUI弹出层
- 生产排程系统_ASPROVA:工序排程软件的全球隐形冠军
- 迪赛智慧数——折线图(渐变堆叠图):近十年母亲节消费趋势
- python3使用smtplib发邮件被退回
- 网络编程学习路线计划
- bpm导出成html,一种基于BPM系统的EXECL导入免开发生成静态HTML表单的方法与流程...
- 江苏大学计算机学院复试题,本部基础A定稿-含答案(江苏大学计算机).doc
- Android系统:如何开启或隐藏Navigation Bar导航 栏
- unity官方教程 太空射击---问题填坑 之 计分以及游戏胜利
- java中让步的_java 多线程—— 线程让步
- python3批量查询域名权重、标题
- Delphi下POS打印机,控制开钱箱,客显,顾客显示屏,小票打印机
- 由于没有公钥,无法验证下列签名:一步解决