Re: [問題] 產生符合常態分佈的亂數

看板Programming作者 (新年是又冷又無聊)時間15年前 (2009/05/20 12:37), 編輯推噓0(001)
留言1則, 1人參與, 最新討論串3/5 (看更多)
※ 引述《Peruheru (還在想)》之銘言: : ※ 引述《maxi326 (新年是又冷又無聊)》之銘言: : : 沒有錯的話,一般亂數產生出來會符合平均分佈 : : 如果要產生出來的亂數符合常態分佈,要怎樣產生? : : 例如產生一百萬個亂數後,他們要符合常態分佈 : Private Sub Command1_Click() : Dim iv, ix, ir As Double : Dim PI As Double : PI = 3.141596 : 'f(x)= (1/(2*3.1415)^(1/2)) * e ^ (-(x^2)/2) 高斯公式 : With Me 'textbox1代表x值 : iv = ((Val(.Text1.Text) ^ 2) / 2) * (-1) '此為計算(-(x^2)/2)的值 : ir = Exp(iv) '計算e ^ (-(x^2)/2) : ix = 1 / Round((2 * PI) ^ (1 / 2), 2) '計算(1/(2*3.1415)^(1/2)) 的值 : .Text2.Text = CStr(ix * ir) 'textbox2代表y=f(x)值 : End With : End Sub 應該不能用,因為算出來的是pdf(x) 而我現在要算的應該是cdf(x)的反函數 今天有空看了一下,積分太久沒有用已經解不出來了 http://upload.wikimedia.org/math/0/d/6/0d6d29564649c2b89454b26db0fa4e06.png
有沒有好心人幫解一下 有人提到box-muller,但我想用反函數 等我找到微積分書再解看看好了 -- -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 59.120.52.124

05/20 18:37, , 1F
05/20 18:37, 1F
文章代碼(AID): #1A4uaK3H (Programming)
討論串 (同標題文章)
文章代碼(AID): #1A4uaK3H (Programming)