Find the last Sunday of each month: Difference between revisions

no edit summary
m (→‎{{header|FreeBASIC}}: typo + output for 2017)
No edit summary
Line 3,123:
Send value: 2013 to the above block to return an array:
(27 January 2013 24 February 2013 31 March 2013 28 April 2013 26 May 2013 30 June 2013 28 July 2013 25 August 2013 29 September 2013 27 October 2013 24 November 2013 29 December 2013)
</pre>
 
=={{header|Swift}}==
<lang Swift>import Foundation
 
func lastSundays(of year: Int) -> [Date] {
let calendar = Calendar.current
var dates = [Date]()
for month in 1...12 {
var dateComponents = DateComponents(calendar: calendar,
year: year,
month: month + 1,
day: 0,
hour: 12)
let date = calendar.date(from: dateComponents)!
let weekday = calendar.component(.weekday, from: date)
 
if weekday != 1 {
dateComponents.day! -= weekday - 1
}
dates.append(calendar.date(from: dateComponents)!)
}
return dates
}
 
var dateFormatter = DateFormatter()
dateFormatter.dateStyle = .short
 
print(lastSundays(of: 2013).map(dateFormatter.string).joined(separator: "\n"))</lang>
{{out}}
<pre>
1/27/13
2/24/13
3/31/13
4/28/13
5/26/13
6/30/13
7/28/13
8/25/13
9/29/13
10/27/13
11/24/13
12/29/13
</pre>
 
Anonymous user