|
发表于 2007-12-29 10:25:00
|
显示全部楼层
Re:唯恐天下不乱,概率题再转
#include <iostream>
#include <memory.h>
#include <stdio.h>
#include <stdlib.h>
#include <windows.h>
using namespace std;
int ten[10];//10个可能去的地方 0-1 不在酒馆 2-9在酒馆
bool discover()
{
for(int i=2;i<10;i++)
{
if(ten==1)//他在第 i 号酒馆
{
printf("警察还没有去 %d号 酒馆\n 警察这次可以在第 %d号酒馆找到他\n", i,i);
return true;//可以在第八个酒馆找到他
}
}
return false;// 不能在的八个酒馆找到他
}
int main()
{
int ifind =-1;//查找次数
int idiscover =0;//找到次数
int ra = -1;
memset(ten,0,sizeof(int)*10);
srand(GetTickCount());
cout<<"请输入您要测试寻找的次数 :(目前只是演示请不要输入你明知道没用的字符)";
cin>>ifind;
if(ifind<0){return 0;}
for(int i=0;i<ifind;i++)
{
memset(ten,0,sizeof(int)*10);//清零
ra = rand()%10;//随机出0-9的一个数字。
ten[ra] = 1; //2-9在酒馆
if(discover()){idiscover++;}
}
cout<<ifind<<"次测试"<<idiscover<<"次可以在第八个酒店找到"<<endl;
cin>>ifind;//为了暂停
return 0;
} |
|