* 第6回 最終レポート [#f3963dc7] ** 課題 [#m0fbaf51] *** 課題1.ジャンケン [#a80aa78b] ジャンケンの勝敗を判定するプログラムを作りなさい。もし出来たら、コンピュータとの対戦型にしてみなさい。 *** 課題2.○×ゲーム [#ca1ec459] ○×ゲーム(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.の手順を、先手と後手を交互にしながら繰り返す。 もし出来たら、○×ゲームをコンピュータとの対戦型にしてみなさい。上級レベルでは、コンピュータは必勝の手を打ってくるようにしてみなさい。