欢迎光临
我们一直在努力

易语言正态随机数

限制在给定的范围内生成正态随机数

.版本 2
.支持库 spec

.程序集 窗口程序集_启动窗口

.子程序 __启动窗口_创建完毕

.计次循环首 (100, )
    调试输出 (“正态随机数”, 正态随机数 (100, 150))
.计次循环尾 ()
结束 ()

.子程序 正态随机数, 整数型, 公开, 正态分布的随机数
.参数 m, 双精度小数型
.参数 n, 双精度小数型
.局部变量 mean, 双精度小数型
.局部变量 sigma, 双精度小数型
.局部变量 z0, 双精度小数型
.局部变量 u1, 双精度小数型
.局部变量 u2, 双精度小数型

' 初始化随机数种子
置随机数种子 (取启动时间 () × 取随机数 (0, 99999))
' 计算均值和标准差
mean = (m + n) ÷ 2
sigma = (n - m) ÷ (2 × 1.645)

.循环判断首 ()
    u1 = 取随机数 (1, 999999) ÷ 100000
    u2 = 取随机数 (1, 999999) ÷ 100000
    z0 = mean + sigma × 求平方根 (-2 × 求自然对数 (u1)) × 求余弦 (2 × #pi × u2)
.循环判断尾 (取反 (z0 ≥ m 且 z0 ≤ n))
' 返回四舍五入后的结果
返回 (z0)

易语言正态随机数-军哥驿站

   

如果文章对你有帮助,欢迎点击上方按钮打赏作者

未经允许不得转载:军哥驿站 » 易语言正态随机数

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址

军哥驿站 建站更专业 更方便

网站开发联系我们