怎样用vb产生200个0到1之间均匀分布随机数和

来源:百度知道 编辑:UC知道 时间:2024/05/28 18:48:13
高斯分布随机数的仿真

建立一个command1按钮
Private Sub Command1_Click()
Dim i, Sum
Dim a(1 To 200)
Sum = 0
For i = 1 To 200
Randomize
a(i) = Rnd()
Sum = Sum + a(i)
Next i
Print Sum
End Sub

==============
然后想了下高斯分布应该b不简单的,就 主要参考了
--------------------------------------------------------------
http://topic.csdn.net/t/20050519/16/4019951.html
这篇?:
就这个就可以了,不用改进法

正态分布的随机数发生器 in C#
主要参考《Numerical Recipes in C++ 2/e》p.292~p.294 和《Simulation Modeling and Analysis
3/e》p.465~p.466。

Box 和 Muller 在 1958 年给出了由均匀分布的随机变量生成正态分布的随机变量的算法。设 U1, U2 是区间 (0, 1) 上均匀分布的随机变量,且相互独立。令

X1 = sqrt(-2*log(U1)) * cos(2*PI*U2);
X2 = sqrt(-2*log(U1)) * sin(2*PI*U2);

那么 X1, X