課題15:閏年の判定(メソッド作成)


プログラムファイル名:UruuM.java
クラス名:UruuM

課題の目標
  1. if命令を理解する。
  2. 条件式の書き方を理解する。
  3. 入力の方法、特に入力例外処理を理解する。
  4. 繰り返し処理とその終了方法を理解する。
  5. メソッドの作成方法を理解する。

課題内容
  1. 西暦年をキーボードから入力し、入力した年が閏年か否かを判定するプログラムを作成して下さい。
  2. 但し、閏年判定に関する以下の処理をメソッドで作成して下さい。
  3. 閏年の判定方法は、
    • 西暦年が4の倍数であるが100の倍数ではない場合は、閏年である。
    • 上記以外であっても400の倍数であれば、その年は閏年である。
    • 上記2つの条件に一致しない場合は、閏年ではない。
  4. キーボードから入力された年が数値でない場合は、”入力が間違っています”のメッセージを表示し、再入力をするようにして下さい。
  5. キーボードから"end"が入力されるまで、西暦年を入力し判定を繰り返しするプログラムを作成して下さい。

作成の手引
  1. 閏年判定メソッドは、西暦年(整数)を引数で受け取り、それが閏年か否かを判定する。
    判定結果、閏年であれば1を、閏年でなければ0(ゼロ)を戻り値として返す。例えば、
    
     public static int UruuHantei(int nen){
                 :
       閏年の判定処理
                  :
       閏年であればーー>return 1;
       閏年でなければー>return 0;
                  :
      }
    
  2. 上記の場合、nenに西暦年が格納されて受け取る。
  3. UruuHantei()メソッドを利用するmain()方は、例えば以下のようにして渡す。
                :
                :
        if (UruuHantei(n)==1) {
                 System.out.println(n + " nen ha Uruu toshi desu.");
                 }
        else  {
                 System.out.println(n + " nen ha Uruu toshi deha arimasen.");
                }
                  :
                  :
    

参考プログラム
  1. 電子テキスト「制御命令の条件処理」に記述されているプログラム。
  2. 電子テキスト「数値入力時のエラー処理」に記述されているプログラム。
  3. 電子テキスト「繰り返し命令(while命令)」に記述されているプログラム。
  4. 電子テキスト「メソッド」に記述されているプログラム。

実行例
[egi@taro]$ java Uruu
Input Year ? 1995
1995 nen ha Uruu toshi deha arimasen.
Input Year ? 19x5
Error Input
Input Year ? 2004
2004 nen ha Uruu toshi desu.
Input Year ?  end

【〆切】
2007年12月22日(土)

【提出物と提出方法】

Java演習 / 江木 / egi@ube-c.ac.jp