○システム名 ヒットアンドブロー ○システム説明 Playerにゲームを行う桁数を決めてもらう コンピュータが数字を選ぶ Playerに当てる数字を入力してもらう 入力した数値のエラーチェック(桁数、重複など) 正誤チェック(xHit: yBlow) すべてHitになるまで、当てる数字を入力してもらう ○納品物 作成したプログラム 設計書 ○早く終わったら・・・・ CUI_BlackJackを作成してください 〇設計書 プログラミングの各段階ごとに処理詳細シートに追記する。 印刷を意識し、印刷プレビューや罫線も意識して作成すること。 〇プログラミング 1段階目(問題作成) 4桁のランダムな数字を表示させる。必ず4桁なので先頭0もOK。ただし、数字が重複しないこと。 <実行例> 0683 2段階目(回答妥当性チェック) 4桁のランダムな数字を表示させた後、キーボードから数字を入力させ、 以下のチェックを行う。エラーがあればエラーメッセージを表示し、再度入力させる。 ・桁数が4桁か  NGの場合のエラーメッセージ「桁数に過ちがあります」 ・全部半角数字か  NGの場合のエラーメッセージ「数値ではありません」 ・重複している数字がないか  NGの場合のエラーメッセージ「重複している値があります」 <実行例> 0683 ←コンピュータが選んだランダムな4桁 12345 ←4桁以外を入力 桁数に過ちがあります 123A ←半角数字以外を入力 数値ではありません 1233 ←重複する数字を入力 重複している値があります 1234 ←重複しない4桁の数字を入力 3段階目(Hit判定) 1段階目を使って4桁のランダムな数字を表示させる。 その後2段階目を使って4桁の重複しない数字を入力させる。 ランダムな数字と入力した数字でHitを数え、以下を表示する  入力した数字 ( ?Hit)  例:1234 ( 1Hit) <実行例> 0283 ←コンピュータが選んだランダムな4桁 1234 ←重複しない4桁の数字を入力 1234 ( 1Hit) ←Hitを表示 4段階目(HitとBlow判定) 1段階目を使って4桁のランダムな数字を表示させる。 その後2段階目を使って4桁の重複しない数字を入力させる。 ランダムな数字と入力した数字でHitとBlowを数え、以下を表示する  入力した数字 ( ?Hit: ?Blow)  例:1234 ( 1Hit: 1Blow) <実行例> 0283 ←コンピュータが選んだランダムな4桁 1234 ←重複しない4桁の数字を入力 1234 ( 1Hit: 1Blow) ←HitとBlowを表示 5段階目(正解するまで繰り返し) 以下の手順で4桁限定のHitAndBlowを完成させる。 1段階目で4桁のランダムの数字を作成するがそれを表示しないように変更する。 4Hitになるまで以下の処理を繰り返す。 ・何回目の回答かを表示する ・2段階目を使って4桁の重複しない数字を入力させる ・HitとBlowを数え表示する <実行例> 1回目の回答 2974 2974 ( 0Hit: 1Blow) 2回目の回答 7639 7639 ( 0Hit: 1Blow) 3回目の回答 5780 5780 ( 1Hit: 0Blow) 4回目の回答 5143 5143 ( 0Hit: 3Blow) 5回目の回答 4381 4381 ( 0Hit: 3Blow) 6回目の回答 3410 6回でクリア 6段階目(桁数指定) 5段階目の先頭に桁数を入力させる処理を追加する。 桁数が1~9以外であれば再入力させ、1~9であればその桁数でHitAndBlowを実行するように変更する。 <実行例> 何桁の数字で開始しますか?(1 ~ 9) 10 正しい数値を入力してください 3 1回目の回答 264 264 ( 0Hit: 1Blow) 2回目の回答 703 703 ( 0Hit: 0Blow) 3回目の回答 485 485 ( 0Hit: 1Blow) 4回目の回答 914 914 ( 0Hit: 1Blow) 5回目の回答 892 892 ( 1Hit: 0Blow) 6回目の回答 596 6回でクリア ○<以下、時間が余った人向け> 7段階目(アニメーション) 「コンピュータが数字を選んでいます。。。。」のアニメーションを実装する。 <実行例> 何桁の数字で開始しますか?(1 ~ 9) 3 コンピュータが数字を選んでいます。。。。 1回目の回答 264 264 ( 0Hit: 1Blow) 2回目の回答 703 703 ( 0Hit: 0Blow) 3回目の回答 485 485 ( 0Hit: 1Blow) 4回目の回答 914 914 ( 0Hit: 1Blow) 5回目の回答 892 892 ( 1Hit: 0Blow) 6回目の回答 596 6回でクリア