こんにちは、七宮さん(@shichinomiya_s)です。
前回の記事で、Claude Codeのインストールと簡単なプログラムの実行までできるようになりましたね。今回は、もう一歩進んで「対話しながらゲームを作る」に挑戦してみます。
実は、プログラミング初心者が最初につまずくのが「何を作ればいいか分からない」という壁なんです。でも、Claude Codeがあれば大丈夫。会話しながら、一緒にゲームを作っていけます(笑)
今回作るのは「数当てゲーム」です。コンピュータが思い浮かべた数字を当てるシンプルなゲームですが、プログラミングの基礎がたくさん詰まっています。
前回のおさらい
まずは前回の内容を軽く振り返っておきましょう。
- Claude Codeのインストール: PowerShellで簡単にインストールできました
- 初めてのプログラム: Hello Worldを表示できました
- 簡単な計算機: 足し算プログラムを作りました
もし前回の記事をまだ読んでいない方は、先にClaude Codeの使い方完全ガイドを読んでおくことをおすすめします。
今回作るゲームの仕様
まずは、どんなゲームを作るのか決めましょう。今回は以下のような仕様にします。
・ゲームの流れ
- コンピュータが1~100の数字をランダムに決める
- プレイヤーが数字を予想して入力
- 「もっと大きい」「もっと小さい」とヒントを出す
- 正解したら終了
- 何回で当てられたか表示する
シンプルですが、これだけでも乱数生成、入力処理、条件分岐、ループといった基本要素が全部入っています。
Claude Codeに相談してみる
さっそくClaude Codeを起動して、作りたいゲームを相談してみましょう。
PowerShellを開いて、プロジェクトフォルダに移動します。
・プロジェクトフォルダを作る
前回作ったtest_projectフォルダを使ってもいいですし、新しくフォルダを作ってもOKです。今回は新しくgame_projectフォルダを作ってみます。

フォルダを作ったら、そこに移動してClaude Codeを起動します。
・Claude Codeに指示を出す
Claude Codeが起動したら、こんな感じで話しかけてみましょう。
私の指示:
「数当てゲームを作りたいです。1~100の数字をコンピュータが決めて、プレイヤーが当てるゲームです。ヒント機能も付けてください。」

すると、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は親切に説明してくれます。
・少しずつ改良していく
一度に全部作ろうとせず、まずは動くものを作って、それから機能を追加していく方がスムーズです。
- 基本的なゲームを作る
- 実際に遊んでみる
- 「こうしたい」を追加
- また遊んでみる
このサイクルが大事です。
今回学んだこと
今回の記事で、以下のことができるようになりました。
- 対話的な開発: Claude Codeと会話しながらプログラムを作れる
- プログラムの改良: 動くものをどんどん改良していける
- エラー対処: エラーが出ても、Claude Codeに相談すれば解決できる
- 基本要素: 乱数、ループ、条件分岐などを実際に使った
プログラミングって、こうやって少しずつ作っていくものなんですね。
次回予告
次回(Level 3)は、もっと実用的なツールを作ってみます。
「Claude Codeでタスク管理を楽にする!シンプルなTodoリストアプリを作ってみた」
日常生活で実際に使えるツールを作ってみましょう。Todoリストなら、毎日使えますからね。
楽しみにしていてください!
まとめ
今回は、Claude Codeで数当てゲームを作ってみました。
ポイント:
- Claude Codeには具体的に指示を出す
- 少しずつ改良していくのがコツ
- エラーが出たら、そのまま相談すればOK
- 分からないことは遠慮せず質問する
プログラミングって、こうやって対話しながら作っていけば、意外と簡単なんです(笑)
次回も、一緒に楽しく学んでいきましょう。それでは!

