Visual Studioで「Wordを推測する」というプログラムを構築しています。特定の条件が何回満たされたかを数える方法がわかりません
私の配列はWordを生成し、入力ボックスが表示されます。ユーザーは、入力ボックスにテキストを入力することによってその単語を推測しなければならず、正しい場合はメッセージボックスが正常に表示され、そうでない場合は、再度試みることを示すメッセージボックスが表示されます。
私はユーザーが正しいと推測する単語の数を数える関数が必要です。私はこれを持っていますが、単語がユーザーの入力と等しい場合は、ラベルに1が表示され、表示されない場合は0が表示されます。このコードは、特定のボタンがクリックされた回数を数えていたときに(さまざまな変数などで)機能していたので、なぜ今は動作しないのか混乱しています。
Dim guess As String
guess = (LCase(InputBox("What is the word", "Guess the word")))
Static hits As Integer
hits = 0
If word = guess Then hits += 1
Label8.Text = hits
ここで、word
は、私の配列によって生成された単語です。
なぜ上記のコードが正しい推測数を増やしていないのですか?あなたはhits
が0にそれがラインhits = 0
を実行するたびに設定されていることを意味し
Static hits As Integer
hits = 0
を持っているので、
'ヒットを= 0 'を使用すると、入力ボックスを表示した直後に毎回実行されるように表示されます。したがって、それぞれの推測で0にリセットされます。その変数を宣言して、ユーザーがゲームを開始したときに0を1回設定し、新しいゲームを開始したときにのみ0にリセットします。 – ADyson
あなたはおそらくこれをいくつかのボタン/要素イベントサブの中で実行しており、毎回ヒット変数をリセットします。だから、それはサブの外側のグローバルとして宣言されるべきです。 –