質問: 数当てゲームヒット&ブローを作っています。 ランダムに指定された4桁の数字と入力した4桁の数字が何個一致するかを得点化したゲームです。 実行をすると expected an indented blockが表示されますがどこが間違っているかが分かりません。 間違っている点をご教示頂けますと幸いです。 ``` #conding:utf-8 import random import tkinter as tk import tkinter.messagebox as tmsg #ボタンがクリックされたときの処理 def ButtonClick(): #テキスト入力欄に入力された文字列を取得 b=editbox1.get() #メッセージとして表示する tmsg.showinfo("入力された数字",b) #4桁の数字か判定する isok=False if len(b)!=4: tmsg.showerror("エラー","4桁の数字を入力してください") else:kazuok=True for i in range(4): if (b[i]<"0")or(b[i]>"9"): tmsg.showerror("エラー","数字ではありません") kazuok=False break if kazuok: isok=True if isok: #4桁の数字であったとき #ヒットを判定 hit=0 for i in range(4): if a[i]==int(b[i]): hit=hit+1 #ブローを判定 blow=0 for j in range(4): for i in range(4): if (int(b[j])==a[i])and(a[i]!=int(b[i]))and(a[j]!=int(b[j])): blow=blow+1 break #ヒットが4なら当たりで終了 if hit=4: tmsg.showinfo("当たり","おめでとうございます。当たりです") #終了 root.destroy() else: #ヒットとブロー数を表示 tmsg.showinfo("ヒント","ヒット"+str(hit)+"/"+"ブロー"+str(blow)) #メインのプログラム #最初にランダムな数字を作成しておく a=[random.randint(0,9), random.randint(0,9), random.randint(0,9), random.randint(0,9)] #メインのプログラム root=tk.Tk() root.geometry("400x150") root.title("数当てゲーム") #テキスト labell=tk.Label(root,text="数を入れてね") labell.place(x=40,y=20) #テキストボックスを作る editbox1=tk.Entry(width=4,font=("Belvetica",28)) editbox1.place(x=120,y=60) #ボタンを作る button1=tk.Button(root,text="チェック",font=("Helvetica",14), command=ButtonClick) button1.place(x=220,y=60) #ウィンドウを表示する root.mainloop() ```
回答: > > for i in range(4): > > if a[i]==int(b[i]): > > hit=hit+1 > > > ここんところのインデント