首页 > 代码库 > 计算2013年的某月某日是当年的第多少天?
计算2013年的某月某日是当年的第多少天?
import java.util.Scanner;
/*
* 计算2013年的某月某日是当年的第多少天?
* 是星期几?已知2013年元旦是星期二。
*/
public class Test2 {
public static void main(String[] args) {
int month, day;
int monthDay = 0;
boolean n = true;
Scanner input = new Scanner(System.in);
System.out.println("请输入2013年的某月某日:");
month = input.nextInt();
day = input.nextInt();
if (month == 1 || month == 3 || month == 5 || month == 7 || month == 8
|| month == 10 || month == 12) {
if (day > 0 && day <= 31) {
monthDay = monthDay + day;
} else {
n = false;
}
} else if (month == 4 || month == 6 || month == 9 || month == 11) {
if (day > 0 && day <= 30) {
monthDay = monthDay + day;
} else {
n = false;
}
} else if (month == 2) {
if (day > 0 && day <= 28) {
monthDay = monthDay + day;
} else {
n = false;
}
} else {
n = false;
}
for (int i = 0; i < month; i++) {
if (i == 1 || i == 3 || i == 5 || i == 7 || i == 8 || i == 10
|| i == 12) {
monthDay = monthDay + 31;
} else if (i == 4 || i == 6 || i == 9 || i == 11) {
monthDay = monthDay + 30;
} else if (i == 2) {
monthDay = monthDay + 28;
}
}
if (n) {
System.out.println("2013年的" + month + "月" + day + "日是当年的第"
+ monthDay + "天");
switch (monthDay % 7) {
case 0: {
System.out.println("是星期一");
break;
}
case 1: {
System.out.println("是星期二");
break;
}
case 2: {
System.out.println("是星期三");
break;
}
case 3: {
System.out.println("是星期四");
break;
}
case 4: {
System.out.println("是星期五");
break;
}
case 5: {
System.out.println("是星期六");
break;
}
case 6: {
System.out.println("是星期天");
break;
}
default:
break;
}
} else {
System.out.println("输入的日期不符合条件");
}
}
}
计算2013年的某月某日是当年的第多少天?