計算某天是星期幾
阿新 • • 發佈:2022-05-13
澤勒一致性
import java.util.*; import javax.swing.*; class Main { public static void main (String[] args){ Scanner input = new Scanner(System.in); System.out.print("Enter year: (e.g., 2008): "); int year = input.nextInt(); System.out.print("Enter month: 1-12: "); int month = input.nextInt(); System.out.print("Enter the day of the month: 1-31: "); int oneDayOfMonth = input.nextInt(); if(month == 1 || month == 2){ month += 12; year -= 1; } /* int daysOfMonth = 0; switch(month){ case 13: daysOfMonth = 31; break; case 14: boolean isLeapYear = (year % 4 == 0 && year % 100 != 0) || (year % 400 == 0); daysOfMonth = isLeapYear ? 29 : 28; break; case 3: daysOfMonth = 31; break; case 4: daysOfMonth = 30; break; case 5: daysOfMonth = 31; break; case 6: daysOfMonth = 30; break; case 7: daysOfMonth = 31; break; case 8: daysOfMonth = 31; break; case 9: daysOfMonth = 30; break; case 10: daysOfMonth = 31; break; case 11: daysOfMonth = 30; break; case 12: daysOfMonth = 31; break; } */ int dayOfWeek = (oneDayOfMonth + (int)((26 * (month + 1)) / 10) + (year % 100) + (int)((year % 100) / 4) + (int)((int)(year / 100) / 4) + 5 * (int)(year / 100)) % 7; String dayOfWeekString = ""; switch(dayOfWeek){ case 0: dayOfWeekString = "Saturday"; break; case 1: dayOfWeekString = "Sunday"; break; case 2: dayOfWeekString = "Monday"; break; case 3: dayOfWeekString = "Tuesday"; break; case 4: dayOfWeekString = "Wednesday"; break; case 5: dayOfWeekString = "Thursday"; break; case 6: dayOfWeekString = "Friday"; break; } System.out.println("Day of the week is " + dayOfWeekString); } }