PCDVD數位科技討論區

PCDVD數位科技討論區 (https://www.pcdvd.com.tw/index.php)
-   七嘴八舌異言堂 (https://www.pcdvd.com.tw/forumdisplay.php?f=12)
-   -   能看出這個簡單程式有什麼問題的人絕對是個高手 (https://www.pcdvd.com.tw/showthread.php?t=816594)

Paulfang 2008-09-22 10:58 AM

弄到最後是大家幫忙檢查功課嗎 :jolin:

山賊 2008-09-22 11:06 AM

引用:
作者八豆妖
沒想到山賊兄除了玩天線, 對於寫程式也小有成就啊.. :eek:


就是因為沒啥腦袋, 沒有辦法在這方面有大成就, 所以十幾年前玩到 qb 後就放棄, 上山改行當山賊去了.......... :stupefy:

aken206 2008-09-22 11:26 AM

這程式是沒有問題的

而且他的效能跟空間也是最好的

並且符合真實世界的機率

還蠻佩服原程式作者的 :)

solonglin 2008-09-22 01:38 PM

引用:
作者aken206
這程式是沒有問題的

而且他的效能跟空間也是最好的

並且符合真實世界的機率

還蠻佩服原程式作者的 :)

+1 以前寫類似樂透的程式也沒想到可以這樣寫

奶油銓 2008-09-22 02:07 PM

引用:
作者=風=
這個程式看來是我多慮了 :ase
早上模擬了好幾次
機率上是沒問題的
不好意思了
:)


請問一下, 你有模擬的結果數據分析嗎 ?
比方說, 分別執行這個選號程式 300000, 900000, 200000, 10000000, 與20000000
次. 比較一下 (i) 各開出號碼的機率分布是否平均. (ii) 只統計每次開出的第一個號碼的機率分布. 關於 (i) 大家都知道是為什麼 (ii) 則是要確保亂數的seed 夠亂.

我自己用 fortran 77改寫了一下這個程式. 其中亂數產生的方式是一般數值分析的書中常用的方法. 結果不盡理想. 36, 37, 38 39 這幾個數值出現的次數, 顯然有錯. 可能
(1) 我額外多寫的程式碼有錯. (這我現在正在除錯中)
(2) 亂數產生器有問題 (但這個亂數產生的方式我已經用它好多年了, 因為有一陣子做過蒙地卡羅方法, 有測試過這個亂數的程式). 可能我的週期不夠大, 導致在這個問題中我的亂數不夠亂.

所以想說如果可以的話, 想與您的測試結果做一個比較. 謝謝

maria 2008-09-22 02:33 PM

試跑五萬次的結果,機率近似於一樣
其他比較深入的討論小弟就不懂了...

數字 次數 比率
1 1307 2.614%
2 1265 2.530%
3 1275 2.550%
4 1228 2.456%
5 1325 2.650%
6 1268 2.536%
7 1255 2.510%
8 1306 2.612%
9 1268 2.536%
10 1282 2.564%
11 1322 2.644%
12 1268 2.536%
13 1285 2.570%
14 1264 2.528%
15 1293 2.586%
16 1265 2.530%
17 1302 2.604%
18 1302 2.604%
19 1256 2.512%
20 1274 2.548%
21 1301 2.602%
22 1273 2.546%
23 1265 2.530%
24 1268 2.536%
25 1255 2.510%
26 1260 2.520%
27 1282 2.564%
28 1307 2.614%
29 1266 2.532%
30 1272 2.544%
31 1257 2.514%
32 1322 2.644%
33 1283 2.566%
34 1285 2.570%
35 1302 2.604%
36 1307 2.614%
37 1297 2.594%
38 1289 2.578%
39 1299 2.598%

maria 2008-09-22 02:49 PM

數字貼錯 囧

數字  次數  比率  第一個數字次數 比率
1-----7619----2.540%----1268----2.536%
2-----7768----2.589%----1312----2.624%
3-----7656----2.552%----1213----2.426%
4-----7708----2.569%----1283----2.566%
5-----7769----2.590%----1297----2.594%
6-----7682----2.561%----1268----2.536%
7-----7617----2.539%----1269----2.538%
8-----7688----2.563%----1275----2.550%
9-----7645----2.548%----1236----2.472%
10----7630----2.543%----1256----2.512%
11----7664----2.555%----1260----2.520%
12----7731----2.577%----1248----2.496%
13----7623----2.541%----1282----2.564%
14----7864----2.621%----1310----2.620%
15----7621----2.540%----1233----2.466%
16----7637----2.546%----1282----2.564%
17----7684----2.561%----1306----2.612%
18----7656----2.552%----1248----2.496%
19----7655----2.552%----1279----2.558%
20----7718----2.573%----1298----2.596%
21----7646----2.549%----1246----2.492%
22----7758----2.586%----1286----2.572%
23----7767----2.589%----1292----2.584%
24----7673----2.558%----1289----2.578%
25----7705----2.568%----1324----2.648%
26----7649----2.550%----1296----2.592%
27----7665----2.555%----1288----2.576%
28----7873----2.624%----1312----2.624%
29----7724----2.575%----1328----2.656%
30----7756----2.585%----1252----2.504%
31----7709----2.570%----1298----2.596%
32----7702----2.567%----1310----2.620%
33----7763----2.588%----1322----2.644%
34----7503----2.501%----1293----2.586%
35----7799----2.600%----1304----2.608%
36----7753----2.584%----1242----2.484%
37----7660----2.553%----1321----2.642%
38----7640----2.547%----1296----2.592%
39----7620----2.540%----1278----2.556%

meagal2006 2008-09-22 07:08 PM

這個程式沒問題呀!
這是random permutation的問題,理論方面可以參考
http://www.techuser.net/randpermgen.html
是可以證明的。這個程式只是該網頁的演算法作一點小改變,因為只要取五個。

lksbgfhgdxcfghs 2008-09-22 07:22 PM

真的是佩服能寫出這麼簡潔樂透程式的作者
因為好死不死
去年老師就是指定用vb寫樂透開獎程式

八豆妖 2008-09-22 07:35 PM

看來 vb 的 Rnd() 寫的還真不錯...


所有的時間均為GMT +8。 現在的時間是05:15 AM.

vBulletin Version 3.0.1
powered_by_vbulletin 2025。