Я пытаюсь вычесть значение из int
, которое имеет заданное значение.Как только он достигнет 0, и я вычту из него больше, значение станет отрицательным.
Я подумал, что если бы я использовал оператор if-else
, чтобы проверить, падает ли значение ниже 0, это предотвратит отрицательное значение.Но значение переходит в отрицательное.Как мне предотвратить попадание значения в отрицательный диапазон?
{
DateTime start = dateTimePicker2.Value.Date;
DateTime end = dateTimePicker1.Value.Date;
TimeSpan difference = end - start;
int days = difference.Days;
int min = 0;
int max = 21;
int rdays = Convert.ToInt32(Holidays_Number_lbl.Text);
Holidays_Number_lbl.Text = (rdays - days).ToString();
int Holidays_Number = int.Parse(Holidays_Number_lbl.Text);
if ((Holidays_Number > min) && (Holidays_Number < max))
{
MessageBox.Show("Holidays have been counted");
}
else
{
MessageBox.Show(" You have exceeded your 21 holidays ");//value goes into the minus ?
}
}
Ожидаемый результат: появляется MessageBox, сообщающий, что вы превысили свои дни, и значение не переходит в отрицательное значение.
ActualРезультат: значение переходит в отрицательное значение.