[問題] 程式跑的"武器衝星期望張數"怪怪的

看板C_and_CPP作者 (生死間有大恐怖)時間14年前 (2011/04/15 17:26), 編輯推噓4(405)
留言9則, 6人參與, 最新討論串1/3 (看更多)
某遊戲中武器衝星規則如下: 1. 武器初始 0 星,每次衝星需消耗一張武卷。 2. 武器 0 星衝 1 星之機率為 1/2。 3. 衝星成功則武器星數變為 1 星,若否則仍是 0 星。 求武器 0 星衝 1 星平均需用幾張武卷? Ans: 期望張數 = 1/2 + 2/2^2 + 3/2^3 + ... + n/2^n + ... = 2 (N 張 x 用完 N 張後第一次達到 1 星的機率) 但我寫了個小程式跑出來怪怪的,我是用 code::blocks 10.05 跑的。 程式碼:http://codepad.org/yoldfrhk 上面網頁上跑出來是 2.00001,和用數學算的幾乎一樣。 但同樣的程式碼複製貼到 code::blocks 10.05 上跑跑出來卻是 2.99985, 雖然有用 srand((unsigned) time(NULL)); 改亂數種子, 但我多加一層迴圈讓他重複跑好多次也都和 2 沾不上什麼邊, 問題在哪裡呢? -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 125.229.246.251

04/15 17:30, , 1F
你衝過之後沒有把star清回0
04/15 17:30, 1F

04/15 17:31, , 2F
所以你衝成功以後,下一次一定失敗
04/15 17:31, 2F

04/15 17:35, , 3F
@@ 那為啥那個網頁跑出來那麼準, 巧合嗎
04/15 17:35, 3F

04/15 17:38, , 4F
同樣的程式碼會跑出不同的結果,是一件很神奇的事= =
04/15 17:38, 4F

04/15 19:53, , 5F
怪怪的 衝失敗不是爆武全部重來嗎?
04/15 19:53, 5F

04/15 20:07, , 6F
你是64bit?
04/15 20:07, 6F

04/15 20:12, , 7F
現在都很少爆武吧,天堂才爆很大
04/15 20:12, 7F

04/15 20:14, , 8F
對窮人而言爆武就不玩了阿~ 遊戲公司怎賺錢?
04/15 20:14, 8F

04/15 21:39, , 9F
對有錢人來說爆武他們才會買得更多!XD
04/15 21:39, 9F
文章代碼(AID): #1Dg0yfLP (C_and_CPP)
文章代碼(AID): #1Dg0yfLP (C_and_CPP)