使用循环语句和随机函数rand()模拟抛1000000次骰子,统计出现1-6点的次数及所占比例,最后输出.
来源:学生作业帮 编辑:大师作文网作业帮 分类:综合作业 时间:2024/09/21 22:14:44
使用循环语句和随机函数rand()模拟抛1000000次骰子,统计出现1-6点的次数及所占比例,最后输出.
用c++
用c++
#include <iostream>
#define M 1000000
int ac[7]={0};
using namespace std;
int main()
{
for(int i=0; i<M; i++)
{
ac[rand()%6+1] +=1;
}
cout<<"Num\tCount\tPercent"<<endl;
for(int i=1;i<7; i++)
cout<<i<<":\t"<<ac[i]<<"\t"<<ac[i]*1.0/M<<endl;
return 0;
}
再问: 调试行了。
int ac[7]={0};
ac[rand()%6+1] +=1;
请问这两句的作用是?我还不是太明白是怎样得到1-6点的次数的?还有,为什么数组的长度是7而不是6?
再答: int ac[7]={0}; // 声明数组大小,6也成,不过声明为7个后可以直接用下标1-6,否则只能是0-5,需要映射一下
ac[rand()%6+1] +=1; // rand()函数返回一个随机数, 模6后得到0-5这六个数之间的一个数,概率基本相等,然后要变换到1-6,所以再加上1就刚好了
#define M 1000000
int ac[7]={0};
using namespace std;
int main()
{
for(int i=0; i<M; i++)
{
ac[rand()%6+1] +=1;
}
cout<<"Num\tCount\tPercent"<<endl;
for(int i=1;i<7; i++)
cout<<i<<":\t"<<ac[i]<<"\t"<<ac[i]*1.0/M<<endl;
return 0;
}
再问: 调试行了。
int ac[7]={0};
ac[rand()%6+1] +=1;
请问这两句的作用是?我还不是太明白是怎样得到1-6点的次数的?还有,为什么数组的长度是7而不是6?
再答: int ac[7]={0}; // 声明数组大小,6也成,不过声明为7个后可以直接用下标1-6,否则只能是0-5,需要映射一下
ac[rand()%6+1] +=1; // rand()函数返回一个随机数, 模6后得到0-5这六个数之间的一个数,概率基本相等,然后要变换到1-6,所以再加上1就刚好了
用C语言编一个程序,模拟投骰子实验10000次,统计各点出现的概率,和1、2、3连续按顺序出现的次数
使用随机函数“rand()”,生成10个[1,100]之间的整数并存于数组中,首先输出数组各元素值.请统计
编写应用程序,用0-1之间的随机数来模拟扔硬币实验,统计扔1000次后出现正反面的次数并输出
甲乙两人各掷一颗均匀的骰子n次,统计分别出现偶数点的次数,求两人掷得的偶数点次数相同的概率.
c语言随机函数随机取1-100之间的数100次,统计各数字出现的频数并输出,运行结果如 1 6 2 4 3 0 .
matlab 掷骰子问题 掷n(2000)次 画出1~6点 出现次数的直方图
(1)编写程序输出如下面所示的九九乘法表,禁止直接使用输出语句原样输出,一定要使用循环语句.\x05
使用随机函数“rand()”,生成10个[1,100]之间的整数并存于数组中,首先输出数组各元素值.然后
VB编写程序 用计算机模拟掷骰子游戏.编写程序统计掷N次后各点数出现的次数
EXCEL函数的问题,统计一列包含日期及时间数据中某个小时比如18点出现的次数.
(用matlab编程计算)将一枚均匀的骰子连续抛掷3 次,考察六点出现的次数及相应的概率.
使用任意循环语句编写程序,计算1+2!+3!+4!+…+n!的和.最后以指数的形式输出