System.out.println(" Sun Mon Tue Wed Thu Fri Sat");
static String getMonthName(int month) {
String monthName = null;
switch (month) {
case 1: monthName = "January"; break;
case 2: monthName = "February"; break;
case 3: monthName = "March"; break;
case 4: monthName = "April"; break; case 5: monthName = "May"; break; case 6: monthName = "June"; break; case 7: monthName = "July"; break; case 8: monthName = "August"; break; case 9: monthName = "September"; break; case 10: monthName = "October"; break; case 11: monthName = "November"; break; case 12: monthName = "December"; } return monthName; }
static void printMonthBody(int year, int month) {
int startDay = getStartDay(year, month); int numberOfDaysInMonth = getNumberOfDaysInMonth(year, month); int i = 0; for (i = 0; i < startDay; i++) System.out.print(" "); for (i = 1; i <= numberOfDaysInMonth; i++) { if (i < 10) System.out.print(" " + i); else System.out.print(" " + i); if ((i + startDay) % 7 == 0) System.out.println(); } System.out.println(); }
static int getStartDay(int year, int month) {
int startDay1800 = 3; int totalNumberOfDays = getTotalNumberOfDays(year, month);
return (totalNumberOfDays + startDay1800) % 7;
} static int getTotalNumberOfDays(int year, int month) { int total = 0; for (int i = 1800; i < year; i++) if (isLeapYear(i)) total = total + 366; else total = total + 365; for (int i = 1; i < month; i++) total = total + getNumberOfDaysInMonth(year, i); return total; }
static int getNumberOfDaysInMonth(int year, int month) {