さて、ループは重要です。そこで抜き打ちテスト!以下の問題をスラスラ解けたら初級卒業レベルだと思います。自力でどこまでプログラムを書く事が出来るでしょうか?


  • 問13. よくあるRPGの導入部
まず「これを長老まで届けてくれぬか?(Y/N)」と表示させる。Yを入力すると「と表示して終了する。Nを入力すると「そう言わんと頼みます。」と表示して、Yを入力するまで、ずっと、「これを長老まで届けてくれぬか?(Y/N)」と表示させ続ける。YやN以外を入力したり、何も入力しない場合は、そのまま同じ質問を出力すること。
よくあるRPGの導入部
Caution!
scanf_s で文字入力を行う場合、セキュリティの観点から入力文字数を設定しないと正しい入力が得られない。そのため、scanf_s("%c", &key, 1); のように、3つめの引数に 1 を指定する。これは1文字入力するという指定となる。

Tips!
1文字入力をscanf_sで行う場合、enterも入力されて動作がおかしくなります。これを防止するにはscanf_sの直前に rewind(stdin); を記述しよう。これでキーバッファが空になるので、scanf_s には新たなキー入力が正しく反映されるようになる。


  • 問14. ランダムスター
面上のランダムな位置にランダムな色で星(★ミ)を表示させる。位置や色の指定は define.h を #include して、座標の位置指定は LOCATE を、色指定には FBLUE, FRED, FMAGENTA, FGREEN, FCYAN, FYELLOW, FWHITE を使用する。星の表示は次のような条件がある。
  1. 星は7色ランダムに10000個発生する。
  2. X 座標はランダムに 1~76 の範囲で発生する。
  3. Y 座標はランダムに 1~25 の範囲で発生する。
  4. 表示後に★の表示を壊さないようにする。
ランダムスター
Tips!
プログラム終了時に表示されるシステムメッセージを画面の下部に黒色で表示すると目立たない。


問15. 歩く人間
人間
人間を右側から左端まで歩かせる。人間の形と色は決まっている。左上に「X座標: nn」などと人間の位置を表示する。X座標は 79~1、Y座標は3とする。1歩毎にパターンを切り替えて人間を表示する。人間のパターンは二種類用意する。移動速度は0.2秒とする。表示後のシステムメッセージは左下とする。
歩く人間
Tip!
0.2秒のウエイトは #include <windows.h> を読み込んで、Sleep(200); とする。
※ ダンプリストのpdf化とかあっという間に出来そうです!