Jump to content

Last Friday of each month: Difference between revisions

→‎{{header|C sharp}}: Added implementation in C#.
(adding maxima)
(→‎{{header|C sharp}}: Added implementation in C#.)
Line 123:
return 0;
}</lang>
 
=={{header|C sharp}}==
<lang csharp>using System;
using System.Collections.Generic;
using System.Globalization;
using System.Linq;
 
namespace RosettaCode.LastFridaysOfYear
{
internal static class Program
{
private static IEnumerable<DateTime> LastFridaysOfYear(int year)
{
for (var month = 1; month <= 12; month++)
{
var date = new DateTime(year, month, 1).AddMonths(1).AddDays(-1);
while (date.DayOfWeek != DayOfWeek.Friday)
{
date = date.AddDays(-1);
}
yield return date;
}
}
 
private static void Main(string[] arguments)
{
int year;
var argument = arguments.FirstOrDefault();
if (string.IsNullOrEmpty(argument) || !int.TryParse(argument, out year))
{
year = DateTime.Today.Year;
}
 
foreach (var date in LastFridaysOfYear(year))
{
Console.WriteLine(date.ToString("d", CultureInfo.InvariantCulture));
}
}
}
}</lang>
Output:
<pre>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/2012</pre>
 
=={{header|C++}}==
Anonymous user
Cookies help us deliver our services. By using our services, you agree to our use of cookies.