zoukankan      html  css  js  c++  java
  • 蔡勒(Zeller)公式:根据日期推算是星期几

    Zeller's Congruence:

    w=y + [y/4] + [c/4] - 2c + [26(m+1)/10] + d - 1

    公式中的符号含义如下:
    w:星期; w对7取模得:0-星期日,1-星期一,2-星期二,3-星期三,4-星期四,5-星期五,6-星期六
    c: 世纪数-1(四位数年份的前两位数)
    y: 年
    m:月(m大于等于3,小于等于14,即在蔡勒公式中,某年的1、2月要看作上一年的13、14月来计算,比如2003年1月1日要看作2002年的13月1日来计算)
    d:日
    [ ]代表取整,即只要整数部分。

    public static int daysOfWeek(int year, int month, int day) {
    	if (month < 3) {
    		month += 12;
    		year -= 1;
    	}
        
    	int c = year / 100;
    	int y = year % 100;
    	int w = (y + (y / 4) + (c / 4) - (2 * c) + ((26 * (month + 1)) / 10) + day - 1) % 7;
    	return w;
    }
    

      

  • 相关阅读:
    mysql--主从复制
    Linux--部署Vue项目
    Linux--安装node.js
    Linux--防火墙和vim
    go.js
    服务端和客户端通信的三种方式
    mysql-排序过程
    数据分析-Numpy
    shell
    Linux-crontab
  • 原文地址:https://www.cnblogs.com/kofxxf/p/3972699.html
Copyright © 2011-2022 走看看