| 查看: 2013 | 回复: 14 | |||
| 当前主题已经存档。 | |||
| 当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖 | |||
[交流]
【求助】产生0~1之间随机数的函数
|
|||
| 产生0~1之间随机数的函数 大家帮帮忙好吗 |
» 猜你喜欢
现代”学阀”该如何界定
已经有14人回复
求合成方法
已经有8人回复
师弟论文见刊大半年才想起来申请专利,还能抢救一下吗?
已经有4人回复
上海工程技术大学 激光智能制造课题组 2027级博士研究生招生
已经有5人回复
课题组招2027级博士 上海工程技术大学 激光智能制造方向
已经有5人回复
有机合成以后会不会被AI改变?做科研的虫友怎么看
已经有8人回复
我的奶奶
已经有3人回复
liuyalihd
铜虫 (小有名气)
- 应助: 0 (幼儿园)
- 金币: 117.7
- 散金: 577
- 帖子: 59
- 在线: 8.7小时
- 虫号: 531310
- 注册: 2008-03-23
- 专业: 计算机体系结构
★ ★ ★
小木虫(金币+0.5):给个红包,谢谢回帖交流
woshilsh(金币+2,VIP+0): 9-6 16:18
小木虫(金币+0.5):给个红包,谢谢回帖交流
woshilsh(金币+2,VIP+0): 9-6 16:18
|
给你段代码看看吧! #define IADD 453806245 #define IMUL 314159269 #define MASK 2147483647 #define SCALE 0.4656612873e-9 int randSeedP = 17; void InitRand (int randSeedI) { struct timeval tv; if (randSeedI != 0) randSeedP = randSeedI; else { gettimeofday (&tv, 0); randSeedP = tv.tv_usec; } } real RandR () { randSeedP = (randSeedP * IMUL + IADD) & MASK; return (randSeedP * SCALE); } #if NDIM == 2 void VRand (VecR *p) { real s; s = 2. * M_PI * RandR (); p->x = cos (s); p->y = sin (s); } #elif NDIM == 3 void VRand (VecR *p) { real s, x, y; s = 2.; while (s > 1.) { x = 2. * RandR () - 1.; y = 2. * RandR () - 1.; s = Sqr (x) + Sqr (y); } p->z = 1. - 2. * s; s = 2. * sqrt (1. - s); p->x = s * x; p->y = s * y; } #endif |
11楼2009-09-06 13:34:22
2楼2009-07-14 22:09:58
3楼2009-07-15 15:49:05
argo
铁杆木虫 (著名写手)
上善若水
- 应助: 4 (幼儿园)
- 金币: 9672.8
- 散金: 200
- 红花: 34
- 帖子: 1940
- 在线: 486.4小时
- 虫号: 507533
- 注册: 2008-02-19
- 性别: GG
- 专业: 凝聚态物性 II :电子结构

4楼2009-07-15 17:48:38










回复此楼