C#擲骰子概率 - 程式人生
文章推薦指數: 80 %
我想證明骰子上擲出6的概率是1/6,而連續擲出6兩次的概率是1/36。
... 您不是要對單獨的試驗進行測試,以檢視“丟擲N個六分之一的機率是多少?”。
程式人生>c#>C#擲骰子概率
【c#】C#擲骰子概率
阿新••發佈:2021-01-17
我想證明骰子上擲出6的概率是1/6,而連續擲出6兩次的概率是1/36。
我編寫的程式是為了模仿該過程。
為了更好地解釋我的程式碼。
“嘗試”是擲骰子的次數。
“diceRoll”是我用來模擬擲骰子的變數。
“successiveAttempts”是用於測量是否連續滾動6的變數,否則將重置while迴圈。
我有一個while迴圈重複10000次的原因是為了多次重複擲骰子測試並獲得結果的平均值。
因為有時6將在3次嘗試或80次嘗試中連續滾動兩次,所以我想通過重複10000次來獲得結果的平均值。
“百分比”是嘗試次數除以重複測試的次數,以獲得每骰子擲骰子的平均嘗試次數。
當我將while迴圈內的數字更改為數字1時,它將在我的程式中返回正確的數字6。
為了擲出6,平均需要6次嘗試。
但是當我將數字更改為2次連續嘗試時。
我得到42,這是不正確的。
連續兩次擲出6的平均嘗試次數為36次嘗試。
當while迴圈中的數字是1vs2時,我無法弄清楚為什麼程式可以正常工作。
有人可以解釋我要去哪裡嗎?如果我的程式碼令人困惑,對不起,我是一個初學者,我很困惑。
如果有人可以幫助我,我將很樂意為您提供幫助。
publicstaticvoidMain(string[]args)
{
RandomnumGen=newRandom();
intdiceRoll=0;
intattempts=0;
intsuccessiveAttempts=0;
intx=0;
while(x<10000)
{
successiveAttempts=0;
while(successiveAttempts<2)
{
diceRoll=numGen.Next(1,7);
if(diceRoll==6)
{
successiveAttempts++;
}
else
{
successiveAttempts=0;
}
attempts++;
}
x++;
}
intpercentage=attempts/x;
Console.WriteLine(percentage);
Console.WriteLine(attempts);
Console.ReadKey();
}
解決辦法
我不認為您在衡量自己在衡量的東西。
您不是要對單獨的試驗進行測試,以檢視“丟擲N個六分之一的機率是多少?”。
為此,您需要執行以下操作:publicstaticvoidMain()
{
RandomnumGen=newRandom();
intsucceses=0;
constintTRIES=10000;
for(inti=0;i
延伸文章資訊
- 1search:骰子機率程式相關網頁資料 - 資訊書籤
了解骰子機率程式知識都與骰子機率公式,擲骰子機率,unlight骰子機率,骰子機率問題密切關係,[b]下載點在 ...
- 2C#擲骰子概率 - 程式人生
我想證明骰子上擲出6的概率是1/6,而連續擲出6兩次的概率是1/36。 ... 您不是要對單獨的試驗進行測試,以檢視“丟擲N個六分之一的機率是多少?”。
- 3模擬擲骰子與次數統計 - 丁培毅
請撰寫一個程式,模擬執行丟兩顆骰子的機率實驗6000 次,. 請紀錄兩個骰子點數和,統計並顯示各種點數和出現的次數. 程式輸出範例:. 2 出現過187 次. 3 出現過336 次.
- 4擲骰子機率圖(程式設計一) | 蘋果健康咬一口
次. 請撰寫一個程式,模擬執行丟兩顆骰子的機率實驗6000 次,. 請紀錄兩個骰子點數和,統計 ... ,(測試骰2區300次) 測試文,請點我二、人物觸發的骰子控制自己在測試時...
- 5骰子機率程式在PTT/Dcard完整相關資訊
關於「骰子機率程式」標籤,搜尋引擎有相關的訊息討論:. 骰寶記錄器- Google Play 應用程式評分3.8 (10) · 免費· Android可記錄擲骰時的完整詳細記錄,還有機率分析, ...