【Java】swich文:入力した月の日数を判定する

■各月の日数の判定方法

▼各月の日数は以下の通り

1月:31日
2月:28日(閏年は29日)
3月:31日
4月:30日
5月:31日
6月:30日
7月:31日
8月:31日
9月:30日
10月:31日
11月:30日
12月:31日

▼判定方法

判定方法はswitch文を使用して、以下の通り判定する。
1・3・5・7・8・10・12月は31日
4・6・9月は30日
2月は28日(閏年は29日)

■作成するプログラムの仕様

▼処理概要

①値を入力する(int型で格納:int_input_month)

②入力した値について
1・3・5・7・8・10・12月の場合
 「(入力値)月は31日あります」と出力
4・6・9月の場合
 「(入力値)月は30日あります」と出力
2月の場合
 「(入力値)月は28日あります
  閏年の場合は29日あります」と出力

▼フローチャート

■サンプルコード

import java.util.Scanner;

public class Sample{

	public static void main(String[] args) {
		// 月をキーボードから入力する
		Scanner scan = new Scanner(System.in);
		System.out.print("月を入力してください:");
		int int_input_month = scan.nextInt();
		
		switch(int_input_month) {
		case 1:
		case 3:
		case 5:
		case 7:
		case 8:
		case 10:
		case 12:
			System.out.println(int_input_month + "月は31日あります");
			break;
		case 4:
		case 6:
		case 9:
		case 11:
			System.out.println(int_input_month + "月は30日あります");
			break;
		case 2:
			System.out.println(int_input_month + "月は28日あります");
			System.out.println("閏年の場合は29日あります");
			break;
		}
		
		scan.close();
		
	}
	
}

■実行結果

▼1月の場合

月を入力してください:1
1月は31日あります

▼6月の場合

月を入力してください:6
6月は30日あります

▼2月の場合

月を入力してください:2
2月は28日あります
閏年の場合は29日あります

赤太字は入力した値を示す。

★参考
閏年判定の参照先

タイトルとURLをコピーしました