SSブログ

Java:switch文の練習問題 [勉強]

REDSTONEで、しゃくれテイマ(Lv550)が遺跡4連秘密ダンジョンの後半(0時発)を待つ間に、職業訓練で使用している教科書の4章「for文」の練習問題でもやろうかなぁ~ってページをペラペラめくってみたら・・・・・・すでに訓練中にやっていた問題ばかりでした。
さらに、以前「for文で閏年判定」とかのブログ記事をUPしていたし・・・5章「switch文」の練習問題を自分なりに解いてみますね。

といっても・・・
やはり、5章「switch文」の練習問題も、ほぼ訓練中にやっていました。
唯一やっていなかったのが、これ。

問題5-7:
「はじめに、『0~6の数字を入力してください。対応した曜日を表示します。』と表示し、キーボードから0~6の数字を入力すると、その数字に応じて「日曜日」「月曜日」・・・「土曜日」と表示して終了するプログラムを作りなさい。0~6以外の数字の入力があった場合には『0~6の範囲で入力してください』と表示して終了させ、数字以外の入力があった場合には『数字を入力してください』と表示して終了する」

さて・・・自分なりに書いてみますかねぇ。

 

 

以下、練習問題5-7に対する回答ソースです。

import java.io.*;

public class Weekday {
 public static void main(String[] args) {
  BufferedReader kbd = new BufferedReader(new InputStreamReader(System.in));
  try {
   System.out.print("0~6の数字を入力してください。対応した曜日を表示します。 :");
   int num = Integer.parseInt(kbd.readLine());
   switch (num) {
   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:
    System.out.println("0~6の範囲で入力してください");
    break;
    }
  } catch (IOException e) {
   System.out.println(e);
  } catch (NumberFormatException e) {
   System.out.println("数字を入力してください。");
  }
 }
}

これ以上スッキリしたソースは私には書けません。(^-^;
switch文の章だし、if文は前の章(4章)で習っていますが、if文で書くよりスマートで、処理速度も速いのかな??

 

・・・ということで、switch文を使った練習問題は終了ーーー。
switch文はif文より高速に実行できるけど、switch文の分岐条件は整数値(int型)でしかできないという制限があるらしいです。って、char型でも分岐できたけど・・・・・・(^-^;
「'」(シングルクォーテーション)で囲った文字は数値扱いなのかな??

次回は、for文の練習問題に挑戦しようかなぁ~って思ったけど・・・ほぼ訓練中にやっている感じがするなぁ・・・。
まぁ、ちょっとだけやってみますよ。

と、REDSTONEで遊びながらJava javaしてる しゃくれアゴでした。
(このブログ記事は遺跡4連秘密後半も終了した後で書いてます。)
晩安&再見! (^-^)ノシ

 


タグ:Java switch文
nice!(0)  コメント(0)  トラックバック(0) 
共通テーマ:資格・学び

nice! 0

コメント 0

コメントを書く

お名前:[必須]
URL:
コメント:
画像認証:
下の画像に表示されている文字を入力してください。

Facebook コメント

トラックバック 0

この広告は前回の更新から一定期間経過したブログに表示されています。更新すると自動で解除されます。