.NET 4.x Как вывести календарь текущего месяца на экран (в консоли)? - C#
Формулировка задачи:
Помогите, ребят. Можете текстом кинуть?
Решение задачи: «.NET 4.x Как вывести календарь текущего месяца на экран (в консоли)?»
textual
Листинг программы
public enum Months
{
Январь = 1,
Февраль = 2,
Март = 3,
Апрель = 4,
Май = 5,
Июнь = 6,
Июль = 7,
Август = 8,
Сентябрь = 9,
Октябрь = 10,
Ноябрь = 11,
Декабрь = 12
}
static void Main(string[] args)
{
ShowYear(2015);
Console.ReadLine();
}
public static void ShowYear(int yearnumber)
{
Calendar myCal = CultureInfo.InvariantCulture.Calendar;
DateTime myDT = new DateTime(yearnumber, 1, 1, myCal);
for(int i=1;i<13;i++)
{
Console.WriteLine((Months)i);
Console.WriteLine();
int month = myCal.GetMonth(myDT);
int j = Convert.ToInt32(myCal.GetDayOfWeek(myDT))-1;
for (int m = 0; m < j; m++) { Console.Write(" "); }
while (myCal.GetMonth(myDT) == month)
{
if (j % 7 == 0) Console.WriteLine();
string space = (myDT.Day.ToString().Length > 1) ? " " : " ";
Console.Write(myDT.Day + space);
myDT = myDT.AddDays(1);
j++;
}
Console.WriteLine();
Console.WriteLine();
}
}