function mystery($y, $m, $d) {
$a = 0;
$b = 0;
$c = 0;
if($m < 3) {
$a = $m + 10;
$b = ($y-1) % 100;
$c = ($y-1) / 100;
}
else {
$a = $m - 2;
$b = $y % 100;
$c = $y / 100;
}
$w = (700 + (((26*$a)-2)/10)+$d+$b+$b/4+$c/4-(2*$c))%7;
echo $w;
}
Один из моих учебных вопросов спрашивает, что вычисляет функция. Я могу пройти и объяснить каждый расчет, но я уверен, что это не то, что мы должны делать. Есть ли какое-то очевидное применение, которого я не вижу?
Мне кажется, что это может быть алгоритм контрольной суммы, потому что всегда создается цифра от 0 до 6.
ps, изначально он был написан на Java, но я для простоты перенес его на PHP, когда набрал его на своем компьютере для тестирования Я могу еще раз напечатать версию Java, если кто-то предпочтет ее.