我有一個練習練習即將完成,我真的很困惑我將如何做這部分。練習是創建一個BlackJack遊戲,我的Array包含(2,3,4,5,6,7,8,9,10,10,10,10,11),我需要給玩家和經銷商2張牌/每個數字,我如何從該數組中獲得2個隨機選擇的數字到標籤中?如何從給定的數組中隨機返回數字到標籤
感謝 布蘭登
我有一個練習練習即將完成,我真的很困惑我將如何做這部分。練習是創建一個BlackJack遊戲,我的Array包含(2,3,4,5,6,7,8,9,10,10,10,10,11),我需要給玩家和經銷商2張牌/每個數字,我如何從該數組中獲得2個隨機選擇的數字到標籤中?如何從給定的數組中隨機返回數字到標籤
感謝 布蘭登
public int GetRandomCard()
{
int[] allCards = {2,3,4,5,6,7,8,9,10,10,10,10,11}
Random random = new Random();
int i = random.Next(0, 12);
return allCards[i];
}
這應該讓你開始...
Label1.Text = GetRandomCard.ToString()
而且數組應該是52長,而且每個INT應該有一個分配給它的卡片。這將有助於獲得ace,並且如果您想要將這些int轉換爲圖像,您將獲得隨機數量的套裝。
開始做什麼?獲取重複的卡片?只有一張卡,但至少它可能是隨機的?這個答案最多是不完整的。我們不提供不完整的答案。 –
這是作業。我的猜測是從「如何隨機抽取數字」入手。 – SinisterMJ
我在展示如何從一個數組中獲得一個隨機數,OP說他們卡住了,並且它的功課 –
一種方法是在陣列上運行Fisher-Yates shuffle,然後選取前兩項。
你駕駛室拿起執行from here。所有你需要的是將你的數組傳遞到Shuffle
,並從混洗陣列中選擇兩個初始項目。
http://stackoverflow.com/a/110570/21418 這裏是一個Fischer-Yates在C#中作爲'Random'的擴展方法。 –
@PrestonGuillot非常好,感謝您分享參考! – dasblinkenlight
使用來自random.next(0, array.length)
爲指標的返回值從數組
int start = random.Next(0, your_array.Length);
Label.Text=your_array[start];
int[] array = new int[] { 2, 3, 4, 5, 6, 7, 8, 9, 10, 10, 10, 10, 11 };
Random r = new Random();
int cardIndex = r.Next(0, array.Length);
隨機'始終使用種子進行初始化,缺省值基於系統時間。 提供不同的種子決不會讓僞隨機數生成器變得更隨機 - 它只會改變你從哪裏開始枚舉。 –
因爲你是對的,我編輯了我的答案,並刪除了關於「製作更多隨機」的錯誤陳述。 – wonko79
獲得價值你有從數組中隨機選擇項有問題嗎?或者填寫表單上的標籤? – hometoast
http://stackoverflow.com/a/14570501/546922 – emd
+1因爲老實說這是作業。你應該展示你到目前爲止所嘗試過的。 – wonko79