広告
  サイト内検索:
<Let's create a game!> Introduction of programming for absolute beginners English
 

SESSION 11 その23
練習問題
  練習問題2:問い

じゃあ、テストだ。

今のコードを改変して
キー入力処理を関数化
してくれ。

もちろん
キー入力処理の内容が
分からないでもできるよ。
はいっ!

今度は1人でも大丈夫!
ってか、丸ごと
カットペーストすりゃ
ほとんど終わり
だけど。。。
あたしは
できる!
 

練習問題 1
 
問1: クイズゲーム完成 解答チェック関数化(Javadoc追加)
のコードの、 キー入力処理 を関数化しなさい。

ただし、関数名は scanInputData とすること。
 
 

クイズゲーム完成 解答チェック関数化(Javadoc追加)
(KotoQuizのKQMain.java)127行目~
 
・・・      
127               /////////////////////////////////////////////////////  
128               //キー入力処理 そのまま書き写してください ここから  
129               int tmpInputNum = 0;//入力番号初期化  
130               try {  
131                   //初期化処理  
132                   final int IMPUT_MAX = 3;//最大入力値  
133                   //キー入力読込処理(int型)  
134                   java.util.Scanner sc = new java.util.Scanner(System.in);  
135                   int inputInt = sc.nextInt();  
136                   //入力値チェックと入力番号への代入  
137                   if (inputInt > 0 && inputInt <= IMPUT_MAX) {  
138                       tmpInputNum = inputInt;  
139                   } else {  
140                       System.out.println("※ コマンドは" + IMPUT_MAX + "以下で入力して下さい ※ ");  
141                   }  
142               } catch (Exception e) {  
143                   System.out.println("※ 数字以外は入力しないで下さい ※ ");  
144               }  
145               //キー入力処理 そのまま書き写してください ここまで  
146               /////////////////////////////////////////////////////  
147      
148               //入力番号を受け取る  
149               inputNum = tmpInputNum;  
・・・    
緑色はキー入力処理


あたしはできる!
あたしはできる!
あたしはできる!
あたしはできる!
あたしはできる!
あのね・・・

やっぱり
心の声が口から
漏れ漏れなん
ですけど・・・
よーし、
がんばるぞー。
心の叫び?

ってか、もう
叫んでるだけ?


  練習問題2:解答

見て見て!できたよ!

キー入力処理を関数にして
メイン関数から呼ぶようにしたよ。

今度は一人でできたよ!
そう、よかったね。

じゃあ、
まずは実行してみよう。
言えるの。
簡単だから
「できた」とは
言えないけど。
 
コード7:クイズゲーム完成 キー入力処理関数化
コードをリンク先から参照して下さい
 
プログラムの動作が変わらないのを実行して確認して下さい



クイズゲーム完成 キー入力処理関数化
(KotoQuizのKQMain.java)127行目~
 
・・・      
127               //入力番号を受け取る  
128               inputNum = scanInputData();  
     
  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~  
  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~  
   
168        /**  
169        * キー入力処理  
170        * @return tmpInputNum 入力番号  
171        */  
172       private static int scanInputData(){  
173      
174           /////////////////////////////////////////////////////  
175           //キー入力処理 そのまま書き写してください ここから  
176           int tmpInputNum = 0;//入力番号初期化  
177           try {  
178               //初期化処理  
179               final int IMPUT_MAX = 3;//最大入力値  
180               //キー入力読込処理(int型)  
181               java.util.Scanner sc = new java.util.Scanner(System.in);  
182               int inputInt = sc.nextInt();  
183               //入力値チェックと入力番号への代入  
184               if (inputInt > 0 && inputInt <= IMPUT_MAX) {  
185                   tmpInputNum = inputInt;  
186               } else {  
187                   System.out.println("※ コマンドは" + IMPUT_MAX + "以下で入力して下さい ※ ");  
188               }  
189           } catch (Exception e) {  
190               System.out.println("※ 数字以外は入力しないで下さい ※ ");  
191           }  
192           //キー入力処理 そのまま書き写してください ここまで  
193           /////////////////////////////////////////////////////  
194      
195           //入力番号を返す  
196           return tmpInputNum;  
197       }  
・・・    
キー入力処理を関数にして、戻り値でキー入力値を受け取るように変更した
 
ほんと
簡単すぎ。
うん、
動作に問題はないね。


でも、このコード、
キー入出力処理を
丸ごと切り出して
戻り値で貰うように
変えただけだろ。

テストにもならねー。
 
なるねー
なるねー

なるなるねー!
  なぽちゃんの
意図に気付いた
んだからねー

いえい!
 


Javadoc形式のコメントも
書いてあるし・・・。

まあ、
これでいいんじゃね。


今回は入力値を
受け取るだけだから
引数は無いしね。
あのね・・・
あたし
すごーい!
やった!

あたしだけでできた!

 
 

広告
home もくじ 前のページを読む 次のページを読む
  サイト内検索:
広告
お勧めの姉妹サイト
leafdays - リーフデイズ 超初心者のための園芸入門 - 楽しい趣味のガーデニング -
広告