【发布时间】:2014-07-19 21:11:43
【问题描述】:
我想知道如何在这个算法中找到如何计算t[] 数组的值?
int dow(int y, int m, int d)
{
static int t[] = {0, 3, 2, 5, 0, 3, 5, 1, 4, 6, 2, 4};
y -= m < 3;
return (y + y/4 - y/100 + y/400 + t[m-1] + d) % 7;
}
【问题讨论】:
-
您可以选择一些您知道日期的随机日期。现在计算
y -= m < 3;和(y + y/4 - y/100 + y/400 + d) % 7的日期。现在将 t[m-1] 设置为一个值,以使您的答案正确。对所有 12 个 m 值执行此操作。检查这个公式的正确性read this post -
顺便说一下,这在 1752 年 9 月及之前将不起作用。
-
我已经阅读了那篇文章,但我仍然无法找到 t[] 数组,请您举个例子来解释一下@MohitJain
-
好的,我给你写一个小代码。
标签: c arrays algorithm dayofweek