Claude Codeで作る初めてのプログラム!対話しながらゲームを作ってみた

Claude Codeで作る初めてのプログラム - 数当てゲーム

こんにちは、七宮さん(@shichinomiya_s)です。

前回の記事で、Claude Codeのインストールと簡単なプログラムの実行までできるようになりましたね。今回は、もう一歩進んで「対話しながらゲームを作る」に挑戦してみます。

実は、プログラミング初心者が最初につまずくのが「何を作ればいいか分からない」という壁なんです。でも、Claude Codeがあれば大丈夫。会話しながら、一緒にゲームを作っていけます(笑)

今回作るのは「数当てゲーム」です。コンピュータが思い浮かべた数字を当てるシンプルなゲームですが、プログラミングの基礎がたくさん詰まっています。

 

前回のおさらい

まずは前回の内容を軽く振り返っておきましょう。

  • Claude Codeのインストール: PowerShellで簡単にインストールできました
  • 初めてのプログラム: Hello Worldを表示できました
  • 簡単な計算機: 足し算プログラムを作りました

もし前回の記事をまだ読んでいない方は、先にClaude Codeの使い方完全ガイドを読んでおくことをおすすめします。

 

今回作るゲームの仕様

まずは、どんなゲームを作るのか決めましょう。今回は以下のような仕様にします。

・ゲームの流れ

  1. コンピュータが1~100の数字をランダムに決める
  2. プレイヤーが数字を予想して入力
  3. 「もっと大きい」「もっと小さい」とヒントを出す
  4. 正解したら終了
  5. 何回で当てられたか表示する

シンプルですが、これだけでも乱数生成入力処理条件分岐ループといった基本要素が全部入っています。

 

Claude Codeに相談してみる

さっそくClaude Codeを起動して、作りたいゲームを相談してみましょう。

PowerShellを開いて、プロジェクトフォルダに移動します。

・プロジェクトフォルダを作る

前回作ったtest_projectフォルダを使ってもいいですし、新しくフォルダを作ってもOKです。今回は新しくgame_projectフォルダを作ってみます。


プロジェクトフォルダ作成

フォルダを作ったら、そこに移動してClaude Codeを起動します。

・Claude Codeに指示を出す

Claude Codeが起動したら、こんな感じで話しかけてみましょう。

私の指示:
「数当てゲームを作りたいです。1~100の数字をコンピュータが決めて、プレイヤーが当てるゲームです。ヒント機能も付けてください。」


Claude Codeに数当てゲーム作成を依頼

すると、Claude Codeが「了解しました!」と言って、プログラムを作り始めてくれます。

私が実際に試したところ、10秒くらいで完成しました(驚)

 

作られたプログラムを見てみる

Claude Codeが作ってくれたプログラムがこちらです。

・number_guess.py

import random

def number_guessing_game():
    # 1~100のランダムな数字を生成
    target_number = random.randint(1, 100)
    attempts = 0

    print("数当てゲームへようこそ!")
    print("1~100の数字を当ててください。")
    print()

    while True:
        try:
            # プレイヤーの入力を受け取る
            guess = int(input("予想した数字を入力してください: "))
            attempts += 1

            # 入力範囲のチェック
            if guess < 1 or guess > 100:
                print("1~100の範囲で入力してください!")
                continue

            # 正解判定
            if guess == target_number:
                print(f"正解です! {attempts}回で当てました!")
                break
            elif guess < target_number:
                print("もっと大きい数字です")
            else:
                print("もっと小さい数字です")

        except ValueError:
            print("数字を入力してください!")

if __name__ == "__main__":
    number_guessing_game()

コードを見ると、ちゃんと仕様通りに作られていますね。

  • 乱数生成: random.randint(1, 100)で1~100の数字を決める
  • ループ: while Trueで正解するまで繰り返す
  • 条件分岐: if/elif/elseでヒントを出す
  • エラー処理: 数字以外の入力にも対応

初心者が自分で書こうとすると結構大変ですが、Claude Codeなら一瞬です(笑)

 

実際にゲームを遊んでみる

さっそく実行してみましょう。

PowerShellで以下のコマンドを入力します。

python number_guess.py


数当てゲーム実行画面

ちゃんと動きました!

私は6回目で当てられました。意外と難しいですね(笑)

 

ゲームを改良してみる

ここからが面白いところです。実際に遊んでみて「こうしたい」という要望が出てきたら、Claude Codeに相談してみましょう。

・難易度選択機能を追加

例えば、私は「難易度を選べるようにしたい」と思いました。

私の指示:
「ゲーム開始時に難易度を選べるようにしてください。イージー(1~50)、ノーマル(1~100)、ハード(1~500)の3つでお願いします。」


難易度選択機能の追加を依頼

すると、Claude Codeがプログラムを修正してくれます。

・修正されたプログラム

難易度選択のコードが追加されました。

def select_difficulty():
    print("難易度を選択してください:")
    print("1. イージー (1~50)")
    print("2. ノーマル (1~100)")
    print("3. ハード (1~500)")

    while True:
        choice = input("選択 (1-3): ")
        if choice == "1":
            return 50
        elif choice == "2":
            return 100
        elif choice == "3":
            return 500
        else:
            print("1、2、3のいずれかを入力してください")

こんな感じで、どんどん機能を追加していけます。

 

エラーが出た時の対処法

プログラムを作っていると、たまにエラーが出ることがあります。でも大丈夫、Claude Codeに相談すれば解決できます。

・よくあるエラー

エラー例1: ModuleNotFoundError

もし「randomモジュールが見つかりません」みたいなエラーが出たら、Pythonが正しくインストールされていない可能性があります。

エラー例2: IndentationError

インデント(字下げ)が間違っているエラーです。Pythonはインデントが重要なので、コピペする時は注意が必要です。

・エラーが出たら

エラーメッセージをそのままClaude Codeに見せましょう。

私の指示:
「こんなエラーが出ました: (エラーメッセージを貼り付け)」

Claude Codeがエラーの原因を説明して、修正してくれます。これ、本当に便利です(笑)

 

Claude Codeとの効果的な対話のコツ

何回かClaude Codeを使ってみて分かった、上手に使うコツをまとめておきます。

・具体的に指示する

  • NG: 「ゲームを作って」
  • OK: 「1~100の数字を当てる数当てゲームを作って。ヒント機能も付けてください」

具体的に言った方が、期待通りのものができます。

・分からないことは素直に聞く

コードの意味が分からなかったら、遠慮せず聞きましょう。

質問例:
「このrandom.randintって何ですか?」
「whileループの仕組みを教えてください」

Claude Codeは親切に説明してくれます。

・少しずつ改良していく

一度に全部作ろうとせず、まずは動くものを作って、それから機能を追加していく方がスムーズです。

  1. 基本的なゲームを作る
  2. 実際に遊んでみる
  3. 「こうしたい」を追加
  4. また遊んでみる

このサイクルが大事です。

 

今回学んだこと

今回の記事で、以下のことができるようになりました。

  • 対話的な開発: Claude Codeと会話しながらプログラムを作れる
  • プログラムの改良: 動くものをどんどん改良していける
  • エラー対処: エラーが出ても、Claude Codeに相談すれば解決できる
  • 基本要素: 乱数、ループ、条件分岐などを実際に使った

プログラミングって、こうやって少しずつ作っていくものなんですね。

 

次回予告

次回(Level 3)は、もっと実用的なツールを作ってみます。

「Claude Codeでタスク管理を楽にする!シンプルなTodoリストアプリを作ってみた」

日常生活で実際に使えるツールを作ってみましょう。Todoリストなら、毎日使えますからね。

楽しみにしていてください!

 

まとめ

今回は、Claude Codeで数当てゲームを作ってみました。

ポイント:

  • Claude Codeには具体的に指示を出す
  • 少しずつ改良していくのがコツ
  • エラーが出たら、そのまま相談すればOK
  • 分からないことは遠慮せず質問する

プログラミングって、こうやって対話しながら作っていけば、意外と簡単なんです(笑)

次回も、一緒に楽しく学んでいきましょう。それでは!

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です