月の日数の計算
元ネタ。
int numberOfDays;
if (month == 4 || month == 6 || month == 9 || month == 11)
numberOfDays = 30;
else if (month == 2)
{ bool isLeapYear = (year % 4 == 0 && year % 100 != 0) || (year % 400 == 0);
if (isLeapYear)
numberOfDays = 29;
else
numberOfDays = 28;
}
else
numberOfDays = 31;
翻訳すると 4,6,9,11月は30日で、2月は28日、ただし年が4で割り切れてかつ100で割り切れない場合、または400で割り切れる場合は閏年で29日。 それ以外、1,3,5,7,8,10,12月は31日。