using System.Collections.Generic;
public static void Main()
foreach( var t in Split(new DateTime(2018,8,1), new DateTime(2018,8,17),6)){
Console.WriteLine(t.Item1.ToString() + " " + t.Item2.ToString());
public static IEnumerable<Tuple<DateTime, DateTime>> Split(DateTime start, DateTime end, int chunk)
while ((chunkEnd = start.AddDays(chunk)) < end)
yield return Tuple.Create(start, chunkEnd);
start = chunkEnd.AddDays(1);
yield return Tuple.Create(start, start.AddDays(chunk));