my $k = $y % 100; my $j = int($y / 100); my $d = 28 - (5 + $k + ($k>>2) + ($j>>2) - 2*$j) % 7;