#include <stdio.h>
int ymd2w(int
_y, int m, int
q) {
int J = _y
/ 100,
K = _y % 100;
return((q +
(((m + 1)*26) / 10) + K + (K / 4) + (J / 4) - (2 * J)) % 7);
}
int main(void) {
printf("%d\n",
ymd2w(2012, 8, 15));
return(0);
}
楽っすねー
関数じゃなくて マクロで実装したほうが便利かもしれないけど
今回は
を参考にしました
ちなみに
この関数からの戻り値は
日曜=1
月曜=2
...
金曜=6
土曜=7
になるので
コードによっては というか かなりの場合 デクリメントしないと正常な値として扱えません
つーことで
年月日から曜日を計算するコードでした
0 件のコメント:
コメントを投稿