设为首页收藏本站
打印 上一主题 下一主题

替友人求助:语言大师乱入:

[复制链接]
查看: 509|回复: 11
跳转到指定楼层
1
发表于 2007-4-28 00:06 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
用C写一个simulator.主要是描述一个exponential distribution.; b, g4 z0 E& a9 p/ z9 d
方程是 x = -ln(y). y 是0到1之间的随机数.x在0到999,999之间指数分布.
7 r2 q% r& U1 P; H% [# G5 B6 D5 u+ [: u+ {# F; C
我的问题是y需要用很小的数才能产生999,999或999,998之类的x分布.即使/ |* V; c) u! ^/ z
用double也无法区分两个很小的y.( i5 L5 M; ?' B% G/ H

; T; ^8 \. o* v8 ?- A/ o请问有什么好主意? C或C++下面都中
分享到:  微信微信
收藏收藏 分享分享
2
发表于 2007-4-28 00:38 | 只看该作者
不好意思,我已经忘记怎么用C了!
回复 支持 反对

使用道具 举报

3
发表于 2007-4-28 01:20 | 只看该作者
TUBRO C初学者并卡在数组和FOR循环的人飘过......
回复 支持 反对

使用道具 举报

4
发表于 2007-4-28 08:37 | 只看该作者
你个鸟人,别和我说这是供应链 的题目!!!- x7 M1 \$ L4 Z: \; v& u* R) m& ~
让你老婆自己回答,这个题 我以前做过。
' l4 T' `* p& Q/ R4 b; w& g) S( U0 o1 }0 F
回复 支持 反对

使用道具 举报

5
 楼主| 发表于 2007-4-28 09:05 | 只看该作者
我日,你丫胡扯个茄子。  R- G3 N* ?" e0 s

1 T' N" z( g0 |5 r( C% ]C#/C++ 里面, bigint/ bigdecimal 的数据类型,( K4 ^* S! p# k
! m5 O) w) }7 \& @  h* k5 [0 B
这实际上是要求随机数数目足够多。比如说,加入我们只有100个随机数,从1-100,那能达到的分辨率就只能是1/100。$ ?' B6 @' ~( J7 K4 q0 X

$ U2 J5 H6 U8 g6 d要求分辨率到1/e^999,999,这个数字多大呢,先算个小的,e^999,e^999=7.2x10^433,这就要求数字位数达到433位,保守一点,算e^999=10^433,有e^999,999=10^4330008 R6 f( u7 L, s' I8 E$ \$ j8 b
4 a; ^2 j6 ^6 H
需要产生的随机数数量为10^433000个以上。这要求的是数字位数有433000位以上。如果单精度是8位(待查),的精度是五万倍以上精度。专门写个程序来实现。
/ N+ m0 _# D& P0 x% H% E/ i( {$ v! ?/ N
这跟共营链有个茄子关系? : C, j& H! z+ V8 Z6 f/ D* J
4 N5 ?( h0 Z" e
[ 本帖最后由 切特务 于 2007-4-28 09:10 编辑 ]
回复 支持 反对

使用道具 举报

6
发表于 2007-4-28 12:13 | 只看该作者
LZ的意思是不是双精度浮点型变量的取值范围也无法满足需求?我记得VB里可以自定义变量类型的,C++里应该也可以吧,或者专门写一个函数生成y的值?/ M  N* W4 f0 ~" g; q
建议上百度知道之类的搜索下,不是个很难的问题,虽然我不知道。。。
回复 支持 反对

使用道具 举报

7
 楼主| 发表于 2007-4-28 12:32 | 只看该作者
原帖由 freewarcraft 于 2007-4-28 12:13 发表
2 q) B5 `$ |1 ^5 @% Y% L6 KLZ的意思是不是双精度浮点型变量的取值范围也无法满足需求?我记得VB里可以自定义变量类型的,C++里应该也可以吧,或者专门写一个函数生成y的值?
) ~$ g" V/ E% R$ b+ v4 P3 }4 U建议上百度知道之类的搜索下,不是个很难的问题,虽然我不知道 ...

9 g. ~# B, f" O% g
$ ^7 B4 R' s( [" Y. p2 ~8 |4 @2 x3 r9 H" D3 j4 u& e
回复 支持 反对

使用道具 举报

8
发表于 2007-4-29 23:15 | 只看该作者
C++……看到就头大的东西啊……继续钻研汇编了
回复 支持 反对

使用道具 举报

9
发表于 2007-4-30 17:08 | 只看该作者
楼上这些可敬地兄弟,你们在说什么话题呀? 看了半天,不得要领!
回复 支持 反对

使用道具 举报

10
发表于 2007-5-1 01:05 | 只看该作者
楼上的,我们在讨论计算机汇编语言
回复 支持 反对

使用道具 举报

11
发表于 2007-5-16 13:03 | 只看该作者
原来如此,我去搬个凳子,坐着听! 双脚离地。。。。。。^^!
回复 支持 反对

使用道具 举报

12
发表于 2007-5-16 16:30 | 只看该作者
楼上的,建议你拿个大鼎听,有醍醐灌顶的作用。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

关于我们

作战两千(COMBAT2000)成立于新世纪2000年,COMBAT2000品牌秉承精益求精的态度,以诚信为宗旨,力求获得广大用户的拥戴及所有合作伙伴以及供应商的支持。

联系我们

  • 地址: 广州市萝岗区科学大道起云路1号视联电子科技园A栋711室
  • 电话: (am10:00-pm17:00) 400 602 2000
  • 传真:+86-20-8231-1913
  • Email: sales@combat2000.com

分享到

新加入会员

© 2001-2013 COMBAT2000论坛.粤ICP备14001821号  Powered byDiscuz! X3.2 Licensed  
快速回复 返回顶部 返回列表