Не понимаю что должно содержать условие - C#

Узнай цену своей работы

Формулировка задачи:

Учитель дал задние написать программу, состоящую из 3-х textBox-ов, 3-х label-ов и одной кнопки. Смысл программы в следующем: в первое поле мы вводим некий год и узнаём простой это год или високосный; во второе поле мы вводим месяц и узнаём сколько в нём дней (учесть февраль); в третье поле мы вводим число от 1 до 31 (день) и узнаём какой это день недели, согласно введённому году и месяцу. Если же поля года и месяца пусты, а день содержит число, писать день недели согласно нынешнему месяцу. В чём собственно проблема: Если оставлять пустым год, а писать только месяц, программа начинает ругаться типа входная строка имеет неправильный формат.
 
                if(textBoxYear.Text == " ")
                {
                // Что нужно тут???
                }
                 
                year = Int32.Parse(textBoxYear.Text);
 
                if (year % 4 == 0)
                {
                    labelYear.Text = "Високосный год";
                }
                else if (year % 4 != 0)
                    labelYear.Text = "Обычный год";
                else if (textBoxYear.Text == " ")
                    labelYear.Text = " ";
Проверяет год на високосность без проблем, но что писать в строку, если год я не вписывал??? Иначе говоря, если мне нужно оставить поле пустым, что нужно написать, чтобы прекратило ругаться? P.S. Я поместил этот фрагмент в try-catch, теперь просто выскакивает сообщение об ошибке P.P.S. За "день" я ещё не брался, но, чувствую, что тоже нужно будет много думать, чтобы решить проблему

Решение задачи: «Не понимаю что должно содержать условие»

textual
Листинг программы
if(string.IsnullOrWhiteSpace(textBoxYear.Text)
                 || string.IsnullOrWhiteSpace(textBoxMounth.Text))
                {
                        // тут считаем день из "Если же поля года и месяца пусты, а день содержит число, писать день недели согласно нынешнему месяцу."
                }
else
{
                 
                year = Int32.Parse(textBoxYear.Text);
                if(year  % 400 == 0 || year  % 100 != 0 && year  % 4 == 0 ) 
                {
                    labelYear.Text = "Високосный год";
                }
                else
                    labelYear.Text = "Обычный год";
 
}

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

9   голосов , оценка 3.556 из 5
Похожие ответы