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

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

[复制链接]
查看: 508|回复: 11
跳转到指定楼层
1
发表于 2007-4-28 00:06 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
用C写一个simulator.主要是描述一个exponential distribution.
& q- w5 G- k4 Y$ q方程是 x = -ln(y). y 是0到1之间的随机数.x在0到999,999之间指数分布.
1 u# B4 K5 c0 @7 |/ @# t& a
2 L& x+ ?( w( f! j9 T& i我的问题是y需要用很小的数才能产生999,999或999,998之类的x分布.即使0 Q' R0 n" D# V9 |! D  {
用double也无法区分两个很小的y.3 \( V, @1 p/ |; m- x: S$ f7 `
- I# }# W& W4 z. }+ E/ k0 S
请问有什么好主意? C或C++下面都中
分享到:  微信微信
收藏收藏 分享分享
12
发表于 2007-5-16 16:30 | 只看该作者
楼上的,建议你拿个大鼎听,有醍醐灌顶的作用。
回复 支持 反对

使用道具 举报

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

使用道具 举报

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

使用道具 举报

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

使用道具 举报

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

使用道具 举报

7
 楼主| 发表于 2007-4-28 12:32 | 只看该作者
原帖由 freewarcraft 于 2007-4-28 12:13 发表1 X- C  C+ p" l/ G) c  x
LZ的意思是不是双精度浮点型变量的取值范围也无法满足需求?我记得VB里可以自定义变量类型的,C++里应该也可以吧,或者专门写一个函数生成y的值?3 r- x8 I/ A( j% i
建议上百度知道之类的搜索下,不是个很难的问题,虽然我不知道 ...
1 L* T! S/ g/ u/ j& r. p9 u

& U7 k$ N2 P& M6 s6 O4 f7 n! a) ~7 ?* v
回复 支持 反对

使用道具 举报

6
发表于 2007-4-28 12:13 | 只看该作者
LZ的意思是不是双精度浮点型变量的取值范围也无法满足需求?我记得VB里可以自定义变量类型的,C++里应该也可以吧,或者专门写一个函数生成y的值?
) _/ y( Q' ^$ v$ Z' X. d2 P. x; i建议上百度知道之类的搜索下,不是个很难的问题,虽然我不知道。。。
回复 支持 反对

使用道具 举报

5
 楼主| 发表于 2007-4-28 09:05 | 只看该作者
我日,你丫胡扯个茄子。% ~! l$ v3 m8 `7 V& H) j
2 Q- f, i/ Z% k6 X0 S/ G
C#/C++ 里面, bigint/ bigdecimal 的数据类型,! h; X" S/ _9 Y: ?

- {2 ?0 W% r; Z9 V  [这实际上是要求随机数数目足够多。比如说,加入我们只有100个随机数,从1-100,那能达到的分辨率就只能是1/100。
2 Y" x" s; C- {0 T9 \0 E5 }
8 h6 F& Q9 R1 C* ^) k要求分辨率到1/e^999,999,这个数字多大呢,先算个小的,e^999,e^999=7.2x10^433,这就要求数字位数达到433位,保守一点,算e^999=10^433,有e^999,999=10^433000. R* b  L9 f9 m4 l3 @" B2 U
( I3 H9 m: Q* ]% m) a. F
需要产生的随机数数量为10^433000个以上。这要求的是数字位数有433000位以上。如果单精度是8位(待查),的精度是五万倍以上精度。专门写个程序来实现。
. |$ C6 {* n% C3 F, E# g4 ?* ]+ ~4 U  [+ f- x3 p! W# A$ b" T7 ]  [
这跟共营链有个茄子关系? 5 g' I; I, i. U/ I7 L  g
5 o6 D  m0 K. N- x' P
[ 本帖最后由 切特务 于 2007-4-28 09:10 编辑 ]
回复 支持 反对

使用道具 举报

4
发表于 2007-4-28 08:37 | 只看该作者
你个鸟人,别和我说这是供应链 的题目!!!1 p0 s( K4 m! X, C9 v9 K, D# A
让你老婆自己回答,这个题 我以前做过。
$ U* |1 S" x2 F: q6 H% T  s6 Z1 _$ n+ u& r! Z$ [$ [
回复 支持 反对

使用道具 举报

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

使用道具 举报

2
发表于 2007-4-28 00:38 | 只看该作者
不好意思,我已经忘记怎么用C了!
回复 支持 反对

使用道具 举报

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

本版积分规则

关于我们

作战两千(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  
快速回复 返回顶部 返回列表