数字当てプログラムのはじめに
・数字当てプログラムの概要
・数字当てプログラムのFlowchart
2) StepByStep方式による実践型プログラミング演習では、Step順に進めます。
3) 各Stepが何を求めているか(仕様)をしっかり理解します。
神田ITスクールのStepByStep方式とは
多くの卒業生からよい評判を得ている当スクールの実践型アプリケーション演習は、 概要→フローチャート→StepByStep方式→テストのフェーズで構成しています。
ここでは、StepByStep方式について説明します。
●「StepByStep方式」とは
StepByStep方式とは、長年のプログラム教育ノーハウを活かした神田ITスクールの独自のプログラム作成アプローチ方法です。
これは、「分割統治法(Divide and Conquer)※1」という考え方を借りて神田ITスクールのプログラム講座に適用したもので、
まず大きなプログラムを適切なStep単位で分けて、Step順で少しずつ肉付けしながら組み立てていく発想です。
※1)Divide and Conquer(分割統治法)とは大規模な問題を効率的に解く考え方の一つで、
そのままでは解決することが難しい大きな問題を、いくつかの小さな問題に分割して個別に解決していくことで、
最終的に大きな問題を解決するという考え方です。
●「StepByStep方式」のメリット
①いざとアプリケーション(プログラムともいう)を作成することになると、初心者はどこから手を出せばいいかわからないのが普通です。
StepByStep方式を用いると、初心者でもわかりやすく、Stepごとに漸進的にロジックを付け加えながら、自然の流れでアプリケーションを作成することができます。
②StepByStep方式では、各Stepごとに目標がはっきり見えるため、自分が何をすればよいかがわかります。
③Step単位で自分で手で一からプログラム作成し、実行して結果が出るた度に「私にも出来た!」というプログラムの喜びと楽しさが湧いてきます。
④Stepを経ていくうちに自然の流れでアプリケーション(プログラム)を完成できます。
●「StepByStep方式」の進め方のポイント
- Step順に丁寧に進めます
各StepにはStepの概要、前提条件、目的、キーワード、仕様、手順、実行結果画面、HINTがあります。
- 該当Stepが何を求めるか(仕様)をしっかり把握します。
Step内容を丁寧に精読します。
- 各Stepで案内する手順通りに進めます。
- 必要に応じて、各Stepの後ろにある【HINT】を参考にします。
わからないときは、各Stepの後ろで提供している【HINT】を参考にすると、部分的にHINTが得られます。
|
【使用方法】 ・ここをクリックすると、以下の全Stepを開いたり閉じたりします。 [Click here to Open/Close for all steps] ・以下のStepタイトルをクリックすると、そのStepを開いたり閉じたりします。 |
Step1 正解の判定
Stepの概要
Stepの前提条件
Stepの目的
Stepのキーワード
Stepの仕様
2)開始のメッセージを表示させて、ユーザから1桁の数字入力をもらって判断するメッセージを表示させる。
3)以下の実行画面のように、2つの数字を比較し、①一致する場合、②正解より小さい場合、③正解より大きい場合を確認する。
4)終了時には、終了のメッセージを表示させる。
Stepの手順
・Eclipse準備で作成した「jp.co.f1.app.guess」パッケージに「GuessNumS1.java」ファイルを新規作成する。
2)実行結果画面になるプログラムを、1)で作成したjavaファイルにコーディングを行う。
・ステップ仕様を確認して作成する。
3)作成物の提出を行う。 (提出方法はこちらをクリックしてください)
・プロジェクトファイル
4)次のステップに進む。
Stepの実行結果の例
【実行結果画面の例2】
【実行結果画面の例3】
StepのHINT
Step2 入力した予想データ(数字範囲外、空白)のエラー処理
Stepの概要
Stepの前提条件
Stepの目的
Stepのキーワード
Stepの仕様
1)キーボードから入力されたデータが0~9以外の数字の場合は以下のエラーメッセージを表示する。
→「0~9以内の数字ではありません。」
2)キーボードから入力されたデータが空白(何の入力もなし)の場合は、以下のエラーメッセージを表示する。
→「何も入力されませんでした。」
※<HINT> 空白を判定する処理は、『文字列.equals("")』を使用してください。
※<HINT> 途中でプログラムを終了させたい場合は、「 System.exit(n); 」で可能です。
→nとは0とそれ以外を表す。 0を返すと正常、それ以外の場合は異常を示します。
Stepの手順
・Eclipse準備で作成した「jp.co.f1.app.guess」パッケージに「GuessNumS2.java」ファイルを新規作成する。
2)実行結果画面になるプログラムを、1)で作成したjavaファイルにコーディングを行う。
・ステップ仕様を確認して作成する。
3)作成物の提出を行う。 (提出方法はこちらをクリックしてください)
・プロジェクトファイル
4)次のステップに進む。
Stepの実行結果の例
【実行結果画面の例2】

StepのHINT
Step3 予想数の入力を繰り返す
Stepの概要
Stepの前提条件
・当スクールのJava講座で「繰り返し処理」を終了、または同等知識をお持ちの方。
Stepの目的
また、無限ループから抜け出す方法も習得します。
Stepのキーワード
条件文(if、if-else) キーボード入力 数字(数字文字列)を数値へ変換
Stepの仕様
1)キーボードから入力処理を繰り返して数字を入力できる。
2)以下のプログラム終了条件を満たす場合以外は、繰り返して入力し続ける。
プログラム終了条件 : 以下のどちらかの条件を満たす場合は、プログラムを終了する。
ケース1:正解数字を当てた場合
ケース2:英字の小文字『q』が入力された場合
Stepの手順
・Eclipse準備で作成した「jp.co.f1.app.guess」パッケージに「GuessNumS3.java」ファイルを新規作成する。
2)実行結果画面になるプログラムを、1)で作成したjavaファイルにコーディングを行う。
・ステップ仕様を確認して作成する。
3)作成物の提出を行う。 (提出方法はこちらをクリックしてください)
・プロジェクトファイル
4)次のステップに進む。
Stepの実行結果の例

StepのHINT
Step4 入力した予想データ(数字以外)のエラー処理
Stepの概要
Stepの前提条件
・当スクールのJava講座で「例外処理」を終了、または同等知識をお持ちの方。
Stepの目的
Stepのキーワード
条件文(if、if-else) キーボード入力 数字(数字文字列)を数値へ変換 繰り返し(for、while、do-while)
Stepの仕様
1)文字列数字を数値に変換する時にエラーが発生した場合に、以下のメッセージを表示する。
→「文字が入力されました。0~9の数字を入力してください。」エラーメッセージを表示させる。
2)あらゆる例外エラーをキャッチするExceptionを追加する。
※補足
・例外をキャッチ(catch)した場合は、例外の種類を出力させる事が出来る。
→例えば、println( e + "という例外が発生しました"); //ここでのeは例外のオブジェクト名です。
Stepの手順
・Eclipse準備で作成した「jp.co.f1.app.guess」パッケージに「GuessNumS4.java」ファイルを新規作成する。
2)実行結果画面になるプログラムを、1)で作成したjavaファイルにコーディングを行う。
・ステップ仕様を確認して作成する。
3)次のステップに進む。
Stepの実行結果の例

StepのHINT
数字当てプログラムStep4のテスト実施
Stepの概要
Stepの前提条件
Stepの目的
Stepの手順
1)テスト実施とエビデンスを作成する。
・テストケース通りになる事を確認しエビデンスを作成する。
2)ソースコードチェックリストを作成する。
3)作成物の提出を行う。
| ・プロジェクトファイル | |
| ・ソースコードチェックリスト | |
| ・テストケース | |
| ・エビデンス |
テストケース
テストを行うことによって、作成したアプリケーションの動作確認をすることができます。
| テスト ケース 番号 |
分類1 | テスト内容 | テスト 結果 |
|---|---|---|---|
| 1001 | 正常系 | 正解の数字(X)より予想の数字(Y)が大きい場合、「Yより小さいです。」が表示される。 |
- |
| 1002 | 正解の数字(X)より予想の数字(Y)が小さい場合、「Yより大きいです。」が表示される。 | - | |
| 1003 | 正解の数字(X)と予想の数字(Y)が一致する場合、「!!大当たり!!」が表示される。 | - | |
| 1004 | 小文字(q)が入力された場合、「終了します。」が表示されて、終了する。 | ||
| 2001 | 異常系 | 変数に設定した値の数字が0未満又は10以上の場合、「0~9以内の数字を入力してください。」 |
- |
| 2002 | 変数に設定した値の数字に文字が入力された場合、 「文字が入力されました。0から9以内の数字を入力してください。」表示させて、次の数字を入力をもらう。(※try-catch使用。まだtry-catch講義を受けていない場合はスキップしてください。) | - | |
| 2003 | 変数に設定した値の数字として何も入力されていない場合、 「何も入力されてません。0から9以内の数字を入力してください。」表示させて、次の数字を入力をもらう。 | - |
テスト実施結果
テストを実施した結果は下図のようになります。
【正常系】

【異常系】


