标题:[求助]模拟掷骰子的过程
只看楼主
a8451727
Rank: 1
等 级:新手上路
帖 子:238
专家分:5
注 册:2007-5-22
结帖率:86.67%
 问题点数:0 回复次数:14 
[求助]模拟掷骰子的过程

请教一个:模拟掷骰子的过程。

*抛掷2颗骰子,每颗骰子的点数为随机数1-6。
*抛掷次数由用户输入
*要求输出两颗骰子的相加点数,如:用户输入抛掷次数为:5
有: 5 3 --8 点
4 6 --10点
2 6 --8 点
1 5 --6 点
3 3 --6 点
*计算出两颗骰子的和,在抛掷次数出现的概率如:8点出现2次=2/5;

感觉不是很难,但被概率那难住了。各位

搜索更多相关主题的帖子: 骰子 模拟 
2007-05-26 14:21
zkkpkk
Rank: 2
等 级:论坛游民
威 望:5
帖 子:489
专家分:28
注 册:2006-6-17
得分:0 

用rand()产生伪随机数,用%运算符来限制范围,抛一次色子就是调用两次rand(),没记错的话rand()在stdlib.h里


Viva,espana!
2007-05-26 15:36
a8451727
Rank: 1
等 级:新手上路
帖 子:238
专家分:5
注 册:2007-5-22
得分:0 

我发得出了没


2007-05-27 23:18
a8451727
Rank: 1
等 级:新手上路
帖 子:238
专家分:5
注 册:2007-5-22
得分:0 
晕,两天都问不了。
我想问下,要怎样才可以得到某一特定点数出现的次数?
就比如抛掷10次中,6点出现了3次,要怎样才能把3次提取出来?
谢了

2007-05-27 23:20
zkkpkk
Rank: 2
等 级:论坛游民
威 望:5
帖 子:489
专家分:28
注 册:2006-6-17
得分:0 
给一个变量,这个变量就是需要算概率的点数,如果出现和变量相同的点数时候就用一个初值为0的计数变量自增,计数变量的次数就是你需要的次数

Viva,espana!
2007-05-28 08:44
nuciewth
Rank: 14Rank: 14Rank: 14Rank: 14
来 自:我爱龙龙
等 级:贵宾
威 望:104
帖 子:9786
专家分:208
注 册:2006-5-23
得分:0 
for(int i=0 ; i<10;i++)
{
a[rand()%6+1]++;//记录,初始化为0.
}

倚天照海花无数,流水高山心自知。
2007-05-28 23:55
a8451727
Rank: 1
等 级:新手上路
帖 子:238
专家分:5
注 册:2007-5-22
得分:0 

晕```。为什么我循环时,每个随机数都一样的? 帮我看下错哪了
这步都不会,下面的写不下去啊

//类文件:
#include <stdlib.h>
#include "time.h"
class RandomInt
{
public:
RandomInt();
RandomInt(int n,int m);
static double diem(int n,int m);
static double dien(int n,int m);
};

inline double RandomInt::diem(int n,int m)
{
return rand()%m+n;
}
inline double RandomInt::dien(int n,int m)
{
return rand()%m+n;
}

/************************/
函数:
#include <iostream>
#include "RandomInt.h"
#include "time.h"
using namespace std;

void main()
{
srand((unsigned)time(NULL));
int die1=RandomInt::diem(1,6),
die2=RandomInt::dien(1,6);
cout <<"请输入抛掷次数:";
int n;
cin >>n;
cout <<"得出随即数为:"<<"\n";
for(int i=1;i<=n;i++)
cout <<die1<<"\n"
<<die2 <<"\n\n";
}

//如果我直接用:
for(int i=1;i<=n;i++)
cout <<RandomInt::diem(1,6)
<<RandomInt::diem(1,6);
他就能循环出不同的随机数,为什么赋值给die1,die2后就不行了?


2007-05-29 14:44
zkkpkk
Rank: 2
等 级:论坛游民
威 望:5
帖 子:489
专家分:28
注 册:2006-6-17
得分:0 
回复:(a8451727)晕```。为什么我循环时,每个随机数...
你用系统时间做随机种子

Viva,espana!
2007-05-29 17:33
a8451727
Rank: 1
等 级:新手上路
帖 子:238
专家分:5
注 册:2007-5-22
得分:0 
我不懂用系统时间做种子
还没学到呢``。

2007-05-29 17:37
a8451727
Rank: 1
等 级:新手上路
帖 子:238
专家分:5
注 册:2007-5-22
得分:0 
等着师兄姐们回答呢

2007-05-30 01:09



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-142725-1-1.html




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

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