As a pure LINQ expression:
public IEnumerable<String> GetQuarters(int start, int year, int count) { return (from q in Enumerable.Range(0, count) select String.Format("Q{0}-{1}", (start - q) + (((q + 1) / 4) * 4) , year - ((q + 1) / 4))); }
Mathematics is somewhat ugly, but it works, you can use it:
foreach (String quarter in GetQuarters(3, 2011, 5)) { Console.WriteLine(quarter); }
Robv source share