Long year: Difference between revisions
Content added Content deleted
Not a robot (talk | contribs) (Add BCPL) |
Not a robot (talk | contribs) (Add Modula-2) |
||
Line 1,273: | Line 1,273: | ||
, 2099 long year |
, 2099 long year |
||
}</pre> |
}</pre> |
||
=={{header|Modula-2}}== |
|||
<lang modula2>MODULE LongYear; |
|||
FROM InOut IMPORT WriteCard, WriteLn; |
|||
VAR year: CARDINAL; |
|||
PROCEDURE isLongYear(year: CARDINAL): BOOLEAN; |
|||
PROCEDURE p(year: CARDINAL): CARDINAL; |
|||
BEGIN |
|||
RETURN (year + year DIV 4 - year DIV 100 + year DIV 400) MOD 7; |
|||
END p; |
|||
BEGIN |
|||
RETURN (p(year) = 4) OR (p(year-1) = 3); |
|||
END isLongYear; |
|||
BEGIN |
|||
FOR year := 2000 TO 2100 DO |
|||
IF isLongYear(year) THEN |
|||
WriteCard(year, 4); |
|||
WriteLn; |
|||
END; |
|||
END; |
|||
END LongYear.</lang> |
|||
{{out}} |
|||
<pre>2004 |
|||
2009 |
|||
2015 |
|||
2020 |
|||
2026 |
|||
2032 |
|||
2037 |
|||
2043 |
|||
2048 |
|||
2054 |
|||
2060 |
|||
2065 |
|||
2071 |
|||
2076 |
|||
2082 |
|||
2088 |
|||
2093 |
|||
2099</pre> |
|||
=={{header|Nim}}== |
=={{header|Nim}}== |