Find the last Sunday of each month: Difference between revisions
Content added Content deleted
(Added XPL0 example.) |
(→{{header|Elixir}}: add Emacs Lisp) |
||
Line 1,532: | Line 1,532: | ||
2013-12-29 |
2013-12-29 |
||
</pre> |
</pre> |
||
=={{header|Emacs Lisp}}== |
|||
<lang lisp>(require 'calendar) |
|||
(defun last-sunday (year) |
|||
"Print the last Sunday in each month of year" |
|||
(mapcar (lambda (month) |
|||
(let* |
|||
((days (number-sequence 1 (calendar-last-day-of-month month year))) |
|||
(mdy (mapcar (lambda (x) (list month x year)) days)) |
|||
(weekdays (mapcar #'calendar-day-of-week mdy)) |
|||
(lastsunday (1+ (cl-position 0 weekdays :from-end t))) |
|||
) |
|||
(insert (format "%02i-%02i-%02i \n" year month lastsunday)) |
|||
)) |
|||
(number-sequence 1 12))) |
|||
(last-sunday 2013)</lang> |
|||
{{output}} |
|||
<pre>2013-01-27 |
|||
2013-02-24 |
|||
2013-03-31 |
|||
2013-04-28 |
|||
2013-05-26 |
|||
2013-06-30 |
|||
2013-07-28 |
|||
2013-08-25 |
|||
2013-09-29 |
|||
2013-10-27 |
|||
2013-11-24 |
|||
2013-12-29 </pre> |
|||
=={{header|Erlang}}== |
=={{header|Erlang}}== |