求任意一天是周几——蔡勒公式

#include <iostream>
using namespace std;
 
int main(){
	int year,month,day;
    scanf("%d-%d-%d",&year,&month,&day);
    int c,y;
    int D;
    if(month<3){
    	month+=12;
    	year-=1;
	}
	c = year/100;
    y = year%100;
    D = c/4 - 2 * c + y + y/4 + 13*(month+1)/5 + day - 1;
    int w = D;
	w = w >= 0 ? ( w % 7 ) : ( w % 7 + 7 );
    cout<<w<<endl;
	return 0;
}
posted @ 2025-03-27 22:48  ToFuture$  阅读(19)  评论(0)    收藏  举报