Безсистемная ошибка - C#
Формулировка задачи:
static void PrintMonth(int year, int month)
{
var date = new DateTime(year, month, 1);
int count = (date.AddMonths(1) - date).Days;
var skip = (int)date.DayOfWeek;
Console.Write("Пн Вт Ср Чт Пт");
Console.WriteLine(" Сб Вс");
Console.Write(string.Join(String.Empty, Enumerable.Repeat<string>(" ", skip - 1)));// Количество пробелов до начала заполнения.
for (int i = 0; i < count; i++)//от 0 до последнего дня месяца с шагом единица.
{
var d = date.AddDays(i);// переменная d, содержаща
Console.Write("{0,-3}", i + 1 );// Начинать заполнять массив с единицы
if (d.DayOfWeek == DayOfWeek.Sunday)//В восркесенье прыгает на новую строку.
{
Console.WriteLine();
}
}
// Console.WriteLine();//
}
static void Main(string[] args)
{
PrintMonth(2017, 10);Решение задачи: «Безсистемная ошибка»
textual
Листинг программы
Console.Write(string.Join(String.Empty, Enumerable.Repeat<string>(" ", skip==0?6:skip-1)));// Количество пробелов до начала заполнения.