按概率产生数字

exceed_me 2009-06-04 10:41:53
没做过概率的东西,要实现的功能是这样的,我选择一个选项,但只有一定的概率,比如 60% 的概率才能得到相应的分数,比如 10 分,就这样的功能,也就是说我选择一个选项可以得到 10 分,但得到的概率只有 60% ,该怎样实现呢?
...全文
130 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
exceed_me 2009-06-04
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 lingyin55 的回复:]
linux下有个函数是利用噪声来产生随机数的,可以说是真正的随机。
其余的都是伪随机,不过按照你的要求,使用rand是可以满足的。
用rand()%100可以取得0到99的随机数,判断得到的随机数在0到59之间就
可以得分,其余不得分。
[/Quote]

好的,谢谢!
lingyin55 2009-06-04
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 exceed_me 的回复:]
引用 1 楼 w0911h 的回复:
选择一个选项后产生一个随机数,比如这个随机数的范围是1-100,那么可以认为1-60的时候得分,61-100不得分


这个想法不错,但能做到真正的随机和概率吗,因为是帮心理学专业的研究生做一个他们实验的小东西,还是要力保程序和数据的准确性和可靠性的
[/Quote]

linux下有个函数是利用噪声来产生随机数的,可以说是真正的随机。
其余的都是伪随机,不过按照你的要求,使用rand是可以满足的。
用rand()%100可以取得0到99的随机数,判断得到的随机数在0到59之间就
可以得分,其余不得分。
新选组 2009-06-04
  • 打赏
  • 举报
回复
可以用rand()产生随机数的方法:

用rand()%10来表示概率 要表示60%的话 就用rand()%10如果是0~5的数表示成功 否则表示失败 即可表示60%
adventurelw 2009-06-04
  • 打赏
  • 举报
回复
加上srand()随机种子。
exceed_me 2009-06-04
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 w0911h 的回复:]
选择一个选项后产生一个随机数,比如这个随机数的范围是1-100,那么可以认为1-60的时候得分,61-100不得分
[/Quote]

这个想法不错,但能做到真正的随机和概率吗,因为是帮心理学专业的研究生做一个他们实验的小东西,还是要力保程序和数据的准确性和可靠性的
exceed_me 2009-06-04
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 xteaj 的回复:]
6个10分,然后其余用9分,组成数组。然后随机取数,抽中的概率就是60%
[/Quote]

其余用 0 好了,因为只有 60% 的概率能得分,但随即取数该怎么取?
  • 打赏
  • 举报
回复
6个10分,然后其余用9分,组成数组。然后随机取数,抽中的概率就是60%
w0911h 2009-06-04
  • 打赏
  • 举报
回复
选择一个选项后产生一个随机数,比如这个随机数的范围是1-100,那么可以认为1-60的时候得分,61-100不得分

65,210

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧