VBA 標準乱数の生成(ボックスミュラー法)
Sub 標準正規分布()
Dim x As Double
Dim y As Double
Dim u As Double
Dim v As Double
Dim i As Integer
Dim a(999) As Double
Dim b(999) As Double
For i = 1 To 1000
u = Rnd
v = Rnd
x = (-2 * Log(u)) ^ (1 / 2) * Sin(2 * 4 * Atn(1) * v)
y = (-2 * Log(u)) ^ (1 / 2) * Cos(2 * 4 * Atn(1) * v)
a(i - 1) = x
b(i - 1) = y
Next i
For i = 1 To 1000
Cells(i, 14).Value = a(i - 1)
Cells(i, 15).Value = b(i - 1)
Next i
End Sub