import javax.swing.*;
import java.lang.*;
public class Wanyear
{
public static void main(String[] args)
{
String input=JOptionPane.showInputDialog
("Please Enter the year");
int year=Integer.parseInt(input);
String input1=JOptionPane.showInputDialog
("Please Enter the Month");
int m=Integer.parseInt(input1);
String input2=JOptionPane.showInputDialog
("Please Enter the Day");
int d=Integer.parseInt(input2);
String Nyear=Integer.toString(year); String Sc=Nyear.substring(0,1);
String Sy=Nyear.substring(2,3);
int c=Integer.parseInt(Sc);
int y=Integer.parseInt(Sy);
if(m<3){
year--;
m+=12;}
else
c--;
int w=(c/4)-(2*c)+y+(y/4)+(13*(m+1)/5)+d-1;
int result=0;
if(w>=0)
result=w%7;
else
result=(w+700)%7;
switch(result)
{
case 0: System.out.println("SUN"); break;
case 1: System.out.println("MON"); break;
case 2: System.out.println("TUE"); break;
case 3: System.out.println("WED"); break;
case 4: System.out.println("THU"); break;
case 5: System.out.println("FRI"); break;
case 6: System.out.println("SAT"); break;
}
}
}
参考算法: 不查日历怎么知道任何一天是星期几(zt)
发表:2004-5-7 10:41:14 出处:你的博客网(yourblog.org)
最常见的公式:W = [Y-1] + [(Y-1)/4] - [(Y-1)/100] + [(Y-1)/400] + DY是年份数,D是这一天在这一年中的累积天数,也就是这一天在这一年中是第几天。 最好用的是蔡勒公式:W = [C/4] - 2C + y + [y/4] + [13 * (M+1) / 5] + d - 1
import java.lang.*;
public class Wanyear
{
public static void main(String[] args)
{
String input=JOptionPane.showInputDialog
("Please Enter the year");
int year=Integer.parseInt(input);
String input1=JOptionPane.showInputDialog
("Please Enter the Month");
int m=Integer.parseInt(input1);
String input2=JOptionPane.showInputDialog
("Please Enter the Day");
int d=Integer.parseInt(input2);
String Nyear=Integer.toString(year); String Sc=Nyear.substring(0,1);
String Sy=Nyear.substring(2,3);
int c=Integer.parseInt(Sc);
int y=Integer.parseInt(Sy);
if(m<3){
year--;
m+=12;}
else
c--;
int w=(c/4)-(2*c)+y+(y/4)+(13*(m+1)/5)+d-1;
int result=0;
if(w>=0)
result=w%7;
else
result=(w+700)%7;
switch(result)
{
case 0: System.out.println("SUN"); break;
case 1: System.out.println("MON"); break;
case 2: System.out.println("TUE"); break;
case 3: System.out.println("WED"); break;
case 4: System.out.println("THU"); break;
case 5: System.out.println("FRI"); break;
case 6: System.out.println("SAT"); break;
}
}
}
参考算法: 不查日历怎么知道任何一天是星期几(zt)
发表:2004-5-7 10:41:14 出处:你的博客网(yourblog.org)
最常见的公式:W = [Y-1] + [(Y-1)/4] - [(Y-1)/100] + [(Y-1)/400] + DY是年份数,D是这一天在这一年中的累积天数,也就是这一天在这一年中是第几天。 最好用的是蔡勒公式:W = [C/4] - 2C + y + [y/4] + [13 * (M+1) / 5] + d - 1
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货