C语言之基本算法28—硬币抛投(随机数)
来源:互联网 发布:淘宝营销系统架构 编辑:程序博客网 时间:2024/06/05 20:28
//硬币抛投(随机数)
/*
=====================================================================
题目:抛投两枚硬币,试分析共有几种情况,概率分别为多少?
=====================================================================
*/
#include<stdio.h>
#include<iomanip>
#include<ctime>
main()
{
int a,b,c,n,x,y;a=0;b=0;c=0;
srand(time(0));//这个必须有,否则无法生成随机数!
for(n=0;n<100;n++)
{
x=rand()%(2-0)+0;//产生0,1两种结果,表示一正一反,所以在[0,2)内产生随机数,即2=2-0+0,在[a,b)内产生随机数:rand()%(b-a)+a,此处a=0,b=2;
y=rand()%(2-0)+0;
printf("%3d: %d,%d ",n+1,x,y);
if((n+1)%5==0)printf("\n");
if(x+y==0)
a++;
else if(x+y==1)
b++;
else
c++;
}
printf("两个正面:%d,一正一反:%d,两个反面:%d\n",a,b,c);
}
/*
====================================================================
评:
*/
/*
=====================================================================
题目:抛投两枚硬币,试分析共有几种情况,概率分别为多少?
=====================================================================
*/
#include<stdio.h>
#include<iomanip>
#include<ctime>
main()
{
int a,b,c,n,x,y;a=0;b=0;c=0;
srand(time(0));//这个必须有,否则无法生成随机数!
for(n=0;n<100;n++)
{
x=rand()%(2-0)+0;//产生0,1两种结果,表示一正一反,所以在[0,2)内产生随机数,即2=2-0+0,在[a,b)内产生随机数:rand()%(b-a)+a,此处a=0,b=2;
y=rand()%(2-0)+0;
printf("%3d: %d,%d ",n+1,x,y);
if((n+1)%5==0)printf("\n");
if(x+y==0)
a++;
else if(x+y==1)
b++;
else
c++;
}
printf("两个正面:%d,一正一反:%d,两个反面:%d\n",a,b,c);
}
/*
====================================================================
评:
首先要知道这是C语言和C++的组合,其实他们是一种语言。必须用到<ctime>和<iomanip>
函数(如果不知道,那么背会记住就可以)。考点是投掷两个硬币可能产生三种结果:1、两
正,2、两反,3、一正一反,分别用0,1,2表示,这就分析出两个要素需要产生三种结果,自
然是0+0=0;0+1=1;1+1=2;所以要随机产生0,1两个要素。即在[0,2)产生随机数或等价于
[0,1]的随机数!
=====================================================================*/
0 0
- C语言之基本算法28—硬币抛投(随机数)
- C语言之基本算法13—兑换硬币
- C语言之实现随机数产生算法
- 随机化算法(随机数产生并模拟抛硬币实验)
- C语言之基本算法01—完全数
- C语言之基本算法02—水仙花数
- C语言之基本算法04—百钱买百鸡
- C语言之基本算法05—韩信点兵
- C语言之基本算法10—最大公约数和最小公倍数
- C语言之基本算法12—谁是冠军
- C语言之基本算法14—猴子吃桃
- C语言之基本算法16—条件全排列
- C语言之基本算法18—谁是小偷
- C语言之基本算法19—枚举勾股数
- C语言之基本算法20—同构数
- C语言之基本算法21—可逆素数
- C语言之基本算法27—条件余数
- C语言之基本算法31—杨辉三角
- POJ 1830 开关问题(高斯消元解异或方程)
- 归并排序 递归和非递归实现
- UIButton学习记录
- 为什么要使用R语言?历数R的优势与缺点
- 第一篇博客
- C语言之基本算法28—硬币抛投(随机数)
- Centos版本 32或64位查看命令
- Oracle创建序列
- Android-帧动画
- [小技巧] Linux 下查询图片的大小
- Silverlight 5 Grid组的MouseLeave响应
- 黑马程序员——JAVA基础---操作数组
- 【最短路】hdu2544 SPFA以及SPFA的优化
- open函数和fopen函数的区别