基姆拉尔森计算公式求星期
蔡勒公式
简介:
蔡勒(Zeller)公式,是一个计算星期的公式,随便给一个日期,就能用这个公式推算出是星期几。
w = (d+2*m+3*(m+1)/5+y+y/4-y/100+y/400+1)%7;
符号说明:
符号 | 解释 |
---|---|
w | 星期,0-星期日,1-星期一,2-星期二,3-星期三,4-星期四,5-星期五,6-星期六 |
c | 年份前两位 |
y | 年(年份后两位 |
m | 月(在公式中,某年的1、2月要看作上一年的13、14月来计算,比如2019年1月1日要看作2018年的13月1日来计算) |
d | 日 |
[ ] | 代表取整,即只要整数部分。 |
注意:1.以上公式只适合于1582年10月15日之后的情形(当时的罗马教皇将恺撒大帝制订的儒略历修改成格里历,即今天使用的公历)
2.由于编程中数据都使用的是int整数类型,所以 [ ]可以直接去掉,整除直接使用/就行。
判断闰年:
可以被4整除且不能被100整除 或者 可以被400整除
跑步锻炼
月初或者星期1跑2公里
其他时间跑1公里
从2000.1.1号到2020.10.1
求跑的公里数
#include <iostream>
using namespace std;
int day[15]={0,31,28,31,30,31,30,31,31,30,31,30,31};void runnian(int y){if((y%4==0&&y%100!=0)||y%400==0)day[2]=29;else//不能省去,不能保证上一年2月是28天day[2]=28;
}
int main()
{int ans=0;// runnian(2200);// cout<<day[2];int y=2000,m=1,d=1,w=6;while(!(y==2020&&m==10&&d==1)){//2020.10.1截至//今天if(w==1 || d==1)ans++;ans++;//明天d++;w=(w+1)%7;if(d>day[m]){d=1;m++;if(m>12){y++;m=1;}}runnian(y);}cout<<ans+2;//2020.10.1后没算return 0;
}
基姆拉尔森计算公式求星期相关推荐
- python 用基姆拉尔森计算公式求出某一天是星期几
代码: RiQi = input("输入以下格式日期\"year-month-day\":") #输入日期 pingnian = [31,28,31,30,31 ...
- 使用C语言根据年月日求星期(基姆拉尔森计算公式)。
题目 题目: 根据年月日求星期. 以下是本篇文章正文内容,欢迎朋友们进行指正,一起探讨,共同进步.--来自考研路上的lwj 一.解题思路 思路: 本题主要使用这个算法求出把算法代入程序即可: 基姆拉尔 ...
- C语言根据日期(年,月,日)判断星期几(使用基姆拉尔森计算公式)
C语言根据日期判断星期几(使用基姆拉尔森计算公式) 算法如下: 基姆拉尔森计算公式 W= (d+2*m+3*(m+1)/5+y+y/4-y/100+y/400) mod 7 在公式中d表示日期中的日 ...
- 算法设计——基姆拉尔森计算公式:计算几月几号是星期几
基姆拉尔森计算公式 W=(d+2*m+3*(m+1)/5+y+y/4-y/100+y/400+1)%7 其中,W表示算出的星期的数字表示:0:星期日:1:星期一-- d表示日期,m表示月份,y表示年份 ...
- 根据日期计算星期几 -- 基姆拉尔森计算公式
首先看下百度百科的基姆拉尔森计算公式定义: 基姆拉尔森计算公式 W= (d+2*m+3*(m+1)/5+y+y/4-y/100+y/400) mod 7 在公式中d表示日期中的日数,m表示月份数,y ...
- 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 = ...
- C语言根据日期判断星期几(使用基姆拉尔森计算公式)
C语言根据日期判断星期几(使用基姆拉尔森计算公式) 算法如下: 基姆拉尔森计算公式 W= (d+2*m+3*(m+1)/5+y+y/4-y/100+y/400) mod 7 在公式中d表示日期中的日数 ...
- 根据日期判断星期几(使用基姆拉尔森计算公式)
基姆拉尔森计算公式 W= (d+2*m+3*(m+1)/5+y+y/4-y/100+y/400) mod 7 在公式中d表示日期中的日数,m表示月份数,y表示年数. 注意:在公式中有个与其他公式不同的 ...
最新文章
- Windows启动文件的详细介绍
- OpenCvSharp用掩膜来实现圆形的ROI区域
- 做谷歌地图是获得Map key的方法
- 在云环境上使用SLF4J对Java程序进行日志记录
- android获取自适应高度,Android中oncreate中获得控件高度或宽度的实现方法
- linux shell ${}简单用法,Linux shell ${}简单用法
- C语言中多维数组的内存分配和释放(malloc与free)(转)
- Struts2出现的问题:
- 吴伯凡-认知方法论-如何做到真正的反思
- 【精品软件】鼠标右键菜单设置管理工具
- 神经网络学习小记录2——利用tensorflow构建循环神经网络(RNN)
- Java笔试题(三)简答题
- Windows10 电源选项中没有 唤醒时需要密码
- c# picturebox 图像拖拽和缩放
- 126邮箱注册测试用例
- 高德地图放大Marker icon
- Oracle Form二次开发实战总结 调用Form
- MediaPlayer播放音频
- android接听ios电话,有了这个神器,在PC上也能接听iPhone电话、收发短息啦(安卓也可以哦~)...
- 【Unity】PlayableGraph监控工具
热门文章
- 百度android apk 加固,百度开放应用加固保护技术 支持Andorid L系统
- 什么是角色建模?3D角色建模简介
- 火凤凰Phoenix FD 2.2 重要参数介绍
- 用python实现本地文件搜索
- QApplication和QCoreApplication的区别
- word 表格上方有空白 但移不上去
- 在电子计算机中off是什么键,电子计算机上的off是什么键
- 关于索引的B tree B-tree B+tree B*tree 详解结构图
- WSL下Docker使用踩坑小记
- 个人支付接入-个人app支付微信支付、支付宝支付接入(2分钟完成接入)