1. 程式人生 > >java經典程式設計題(13-15)

java經典程式設計題(13-15)

【程式14】題目:輸入某年某月某日,判斷這一天是這一年的第幾天?

public class Demo1 {
	public static void main(String[] args) {
		int day = 0;
		int month = 0;
		int year = 0;
		int sum = 0;
		int leap;
		System.out.print("請輸入年,月,日\n");
		Scanner input = new Scanner(System.in);
		year = input.nextInt();
		month = input.nextInt();
		day = input.nextInt();
		// 先計算某月以前月份的總天數
		switch (month) {
		case 1:
			sum = 0;
			break;
		case 2:
			sum = 31;
			break;
		case 3:
			sum = 59;
			break;
		case 4:
			sum = 90;
			break;
		case 5:
			sum = 120;
			break;
		case 6:
			sum = 151;
			break;
		case 7:
			sum = 181;
			break;
		case 8:
			sum = 212;
			break;
		case 9:
			sum = 243;
			break;
		case 10:
			sum = 273;
			break;
		case 11:
			sum = 304;
			break;
		case 12:
			sum = 334;
			break;
		default:
			System.out.println("data error");
			break;
		}
		sum = sum + day; //再加上某天的天數 
//判斷是不是閏年 
		if (year % 400 == 0 || (year % 4 == 0 && year % 100 != 0))			leap = 1;
		else
			leap = 0;
// 如果是閏年且月份大於2,總天數應該加一天 
		if (leap == 1 && month > 2)
			sum++;
		System.out.println("It is the the day:" + sum);
	}
}

【執行結果】

請輸入年,月,日

2014

3

5

It is the the day:64