| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 619 人关注过本帖
标题:求助,随机数问题
只看楼主 加入收藏
nehehuangxin
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2010-7-20
结帖率:50%
收藏
已结贴  问题点数:20 回复次数:4 
求助,随机数问题
知道1~9的数字出现的概率为0.25、0.15、0.11、0.10、0.09、0.09、0.07、0.07、0.07,之后又知道1所对应的A~O的概率为0.16、0.12、0.12、0.11、0.10、0.09、0.09、0.07、0.04、0.04、0.02、0.02、0.01、0.01、0.00;2所对应的A~O的概率为一系列,之后依次类推,3、4、5、6、7、8、9之后都有其A~O的出现概率,编写c语言,随机产生俩组随机数,一组是1~9,第二组是与其对应的A~O,请哪位高手指点一下,很急很急!!!!
搜索更多相关主题的帖子: 随机数 
2010-07-20 11:03
pangding
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:北京
等 级:贵宾
威 望:94
帖 子:6784
专家分:16751
注 册:2008-12-20
收藏
得分:20 
你是想问如何按给定的概率生成随机数吗?

还有我不太明白什么叫“1所对应的A~O的概率“,这是条件概率吗?还有给了一个字母,你怎么知道它是谁对应的?难道用贝叶斯公式猜吗?
2010-07-20 11:21
pangding
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:北京
等 级:贵宾
威 望:94
帖 子:6784
专家分:16751
注 册:2008-12-20
收藏
得分:0 
其实要生成分布简单的随机数,也有比较简单的方法。

比如,假如你可以得到 0~99 的均匀分布,那么这个数小于10的概率,就是10%。
可以用类似下面的语句
if (rand() % 100 < 10) { ... }
2010-07-20 11:34
nehehuangxin
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2010-7-20
收藏
得分:0 
回复 2楼 pangding
对 是的 按给定的概率生成随机数  1所对应的A~O是指,在一发生的情况下,他们发生的概率,其实就是个条件概率,但如果要一个个计算起来也是很麻烦,我是想问问能不能在程序中直接就可以循环进去呢? 其实对c语言编写随机过程自己很不了解,所以才想要发帖求助的~~
2010-07-20 19:40
pangding
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:北京
等 级:贵宾
威 望:94
帖 子:6784
专家分:16751
注 册:2008-12-20
收藏
得分:0 
1~9 用我说那个方法就能按给定的概率生成。

至于那个 A~O 的,我还不是很明白你要做什么,可能得提供些背景,更好理解一点。
你不是说要生成两组随机数吗?是第一组先生成,第二组信赖于第一组吗呢。还是这两组是独立的?独立的情况下,是不是理解成按全概率公式算能符合题意?

另外,如果你觉得自己手算费劲的话(其实我觉得显然不能自己手算,要不然还写程序干嘛)。可以把你说的那些数据写在一个表里,然后程序自己查表算概率。
其实像这种没什么规律的就是不要搞,如果它的分布是是解析的,那么可以推出相关的公式,就不用查表了。
2010-07-21 00:35
快速回复:求助,随机数问题
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.016308 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved