2016-10-10 41 views
0

得到5個尾巴我所試圖做的事:拋硬幣計數的同時嘗試,直到你在一排

我要無限循環下去,直到我得到連續5個尾巴。我也想表明它採取能夠實現5尾連續

這裏嘗試的次數是我:

Dim number = rand.Next(1, 3) 

If number = 1 Then 
    RichTextBox1.Text += "Tails" & vbNewLine 
ElseIf number = 2 Then 
    RichTextBox1.Text += "Heads" & vbNewLine 
End If 

number = rand.Next(1, 3) 

我一直沒能弄明白。預先感謝您的幫助。

+1

這裏,我們去:https://msdn.microsoft.com/en-us/library/ezk76t25.aspx –

+3

取一張紙,一支筆和一枚硬幣。想象一下,你不會有電腦來解決這個問題,但只有你的大腦。你會如何編寫一套簡單的結構,讓你的弟弟能夠執行它們來達到所需的結果?從第一步開始,例如「我需要一個變量來計算我的嘗試次數」。第二次:「我做了以下步驟,直到滿足條件x」,... –

回答

1

您需要一個計數器變量來存儲您已經有多少次尾巴。 While tailCount < 5將打破這個循環,如果你發現5另一個計數器計算總的嘗試:

Dim rand As New Random() 
Dim maxTailCount = 5 
Dim attempts = 0 
Dim tailCount = 0 

While tailCount < maxTailCount 
    attempts += 1 
    Dim number = rand.Next(1, 3) 
    If number = 1 Then 
     tailCount += 1 
    Else 
     tailCount = 0 ' because they must be "in a row" 
    End If 
End While 
Console.WriteLine("Found {0} tails, total attempts: {1}", maxTailCount, attempts) 
+0

太棒了!非常感激 –