Task

Write a program or a script that returns the date of the last Fridays of each month of a given year.

The year may be given through any simple input method in your language (command line, std in, etc).



Example of an expected output:

./last_fridays 2012
2012-01-27
2012-02-24
2012-03-30
2012-04-27
2012-05-25
2012-06-29
2012-07-27
2012-08-31
2012-09-28
2012-10-26
2012-11-30
2012-12-28



Related tasks
 Five weekends
 Day of the week
 Find the last Sunday of each month


with javascript_semantics
procedure last_day_of_month(integer y, dow)
    for m=1 to 12 do
        integer d = days_in_month(y,m),
                a = dow-day_of_week(y,m,d)
        printf(1,"%4d-%02d-%02d\n",{y,m,d+a-7*(a>0)})
    end for
end procedure
constant FRIDAY=5
--prompt_number() is not compatible with pwa/p2js
--last_day_of_month(prompt_number("Year:",{1752,9999}),FRIDAY)
last_day_of_month(2012,FRIDAY)
