У меня есть диапазон дат (дата и количество месяцев), и я хочу подсчитать количество января в этом диапазоне дат.Сколько января в диапазоне дат
Например, заканчивая на 5/2015
и возвращаясь 20 месяцев, есть 2 января: 1/2015
и 1/2014
.
У меня есть диапазон дат (дата и количество месяцев), и я хочу подсчитать количество января в этом диапазоне дат.Сколько января в диапазоне дат
Например, заканчивая на 5/2015
и возвращаясь 20 месяцев, есть 2 января: 1/2015
и 1/2014
.
int currentMonth = 5;
int monthsBack = 20;
int numberOfJans = (int) Math.Floor((monthsBack - currentMonth)/12.0) + 1;
Это математика, а не C#.
граф месяцев между образцом
DateTime dateEnd = Convert.ToDateTime("01/08/2015");
int monthsBack = 24;
DateTime dateStart = dateEnd.AddMonths(-monthsBack);
int janCount = 0;
for (DateTime dd = dateStart; dd < dateEnd; dd = dd.AddMonths(1))
{
if (dd.Month == 1) //if jan
janCount += 1;
}
MessageBox.Show(dateStart.ToShortDateString() +" to "+ dateEnd.ToShortDateString()
+ Environment.NewLine +Environment.NewLine +
janCount.ToString()
);
Не нужно ToString() месяца в вашем статусе if. dd.Month == 1 будет достаточно. – Shar1er80
@ Shar1er80 спасибо за указание, был сонным –
Пожалуйста, сделайте усилие первым. Даже если ваш код не работает, поделитесь тем, что у вас есть, и объясните, где вы застряли. –