事前準備

問題

  1. 以下のプログラムは、calc関数に別の関数(plus1など)を渡して四則演算を行います。以下の「正解の例」になるように、必要な関数を作成してください。このプログラムは実行すると r = calc(5,[plus1,multiply2,plus2]) のところでエラーになります。
    正解の例
  2. このゲームでは、プレイヤの番号を、1, -1とします。その理由は、このあとシミュレーションによるAIを作成するときに、プレイヤが打つ一手の評価値の計算がしやすいからです。 この問題では、手番が順番に入れ替わるのを以下のような数列で扱うことを学びます。
    1, -1, 1, -1, .... (最初に1番のプレイヤ、次に-1のプレイヤ、その次にまた1番のプレイヤが手を打つ。)
    以下のプログラムを適切に修正し、-1,1,-1,...となる数列を作成してください。
    正解の一部(右側が切れています)
  3. 以下のプログラムの(1),(2)の2か所を修正し、ランダムに手を打つAIと人間とが対戦する五目並べゲームを完成させてください。プログラムが正常に動作すると五目並べゲームが2回連続して開始されます。この問題ではその2回に勝利し、そのときの実行結果をフォームに貼り付けてください。このプログラムは実行すると ret = play(cells,next_players) と idx = next_players[i%2](c2) のところでエラーになります。
    正解の一部(上側が切れています)