赞
踩
随机数的产生,是仿真不可缺少的函数,本节是对均匀分布的随机数据进行说明。
通过混合同余法产生均匀分布的随机函数。
a = 2045, c=1, .
是随机数的种子(seed),表示输出,生成的随机数输出。
1. C 语言的直接实现
- double uniform (double in_a, double in_b, int *seed)
- {
- const int a = 2045;
- const int c = 1;
- const int M = pow(2, 20);
- double t;
-
- *seed = a*(*seed)+c;
- *seed = *seed - (*seed/M)*M;
-
- t = *seed/M;
- t = in_a + (in_a-in_b)*t;
-
- return t;
- }
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。