* 第7回 C言語の応用(○×ゲーム) [#rc70dc02]

** 課題 [#m62f83f5]

- [[プログラムの提出のしかた>../提出]]
- [[C言語のコンパイルと実行のしかた>../C言語環境]]

*** 中級〜上級レベル [#i20acf70]

w1) ○×ゲーム(Tic-Tac-Toe)を作る。以下がプログラムの行う処理の説明である。

> ''準備''

> 1. 2次元配列を用いて、3×3の盤面を定義し、全部のマスを空に初期化する。※ たとえば、整数配列int board[3][3]で定義する。

> ''入力''

> 2. 次の手が、先手の番か後手の番かを表示する。※ もちろんだが、先手と後手は交互にくる。

> 3. キーボードから、手(座標)を読み込む。※ たとえば、「1 2」とか「1b」とか…

> 4. 盤面に、その手を保存する。※ たとえば、空なら「0」、○なら「1」、×なら「2」のように決めておく。

> 5. 盤面の状態を表示する。※ 2重ループを使う。

> ''判定''

> 6. タテ・ヨコ・ナナメに1列そろっているかどうか判定し、そろっていればその手番の勝利とする。

> 7. すべてのマスが○か×で埋め尽くされても勝負がつかなかったら、そこまでで終わりとする。

> ''反復''

> 8. 以上2.〜7.の手順を、先手と後手を交互にしながら繰り返す。

w2) ○×ゲームをコンピュータとの対戦型にしなさい。上級レベルでは、コンピュータは必勝の手を打ってくるようにしなさい。

トップ   編集 差分 履歴 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS