В зависимости от порядкового номера месяца вывести на экран количество дней в этом месяце - C#
Формулировка задачи:
Составить программу, которая в зависимости от порядкового номера месяца (1, 2, ..., 12) выводит на экран количество дней в этом месяце. Рассмотреть два случая:
1) год не является високосным;
2) год может быть високосным (информация об этом вводится с клавиатуры).
в чем ошибки
static void Main(string[] args)
{
while (true)
{
int n;
bool k;
while (true)
{
try
{
Console.Write("порядковый номер месяца:");
n = Convert.ToInt16(Console.ReadLine());
if (n >= 1 & n <= 12)
{
Console.Write("год високосный? ввести 0 если нет:");
k = Convert.ToBoolean(Console.Read());
break;
}
else
Console.WriteLine("вне диапазона значений,повторите ввод");
}
catch (FormatException)
{
Console.WriteLine("не число");
}
}
switch (n)
{
case 2:
if (k == true)
Console.WriteLine("в месяце 28 дней");
else
Console.WriteLine("в месяце 29 дней");
break;
}
switch (n)
{
case 4:
Console.WriteLine("в месяце 30 дней");
break;
case 6:
Console.WriteLine("в месяце 30 дней");
break;
case 9:
Console.WriteLine("в месяце 30 дней");
break;
case 11:
Console.WriteLine("в месяце 30 дней");
break;
default:
Console.WriteLine("в месяце 31 дней");
break;
}
Console.WriteLine("Контроль нажатия клавиш. Для выхода нажмите Esc, для продолжения любую клавишу");
ConsoleKey e = Console.ReadKey().Key;
if (e == ConsoleKey.Escape)
break;
Console.WriteLine("нажата клавиша {0}", e);
}
}
после оператора break для выхода из программы, можно что сделать со строкой
Console.WriteLine("нажата клавиша {0}", e);
Решение задачи: «В зависимости от порядкового номера месяца вывести на экран количество дней в этом месяце»
textual
Листинг программы
k = Convert.ToBoolean(Console.Read());