| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 242 人关注过本帖
标题:请帮忙看看并补充一下
只看楼主 加入收藏
maxmars
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2011-8-28
收藏
 问题点数:0 回复次数:1 
请帮忙看看并补充一下
游戏的每一局是以都出正面次数(H)与反面次数(T)相差三次作为每局的结束,例如有一局丢出HHH(三次正面与零次反面)或有一局丢出TTHTHT(两次正面与五次反面)视为该局的结束点。
每丢掷一次必须付费一元
每局结束都可以获得8元,因此若该局丢掷次数超过8次,则表示将会输钱;若丢掷次数少於8次,则表示将会赢
程序代码:
#include<iostream>
#include<iomanip>
#include<ctime>
using namespace std;
int flip()
{

 if(rand()%2)
  return 0;

 else
  return 1;
}
int main()
{ srand( (unsigned)time( NULL ) );

 int heads=0;

 int tails=0;

 int m=8;

 cout<<"Times"<<setw(10)<<"Heads"<<setw(10)<<"Tails"<<endl;


 for(int n=0;n<10000;n++)

 {
  if(flip()==0)
  { tails++;
  m--;}
  else
  {heads++;
  m--;}
  if((tails-heads)==3||(heads-tails)==3)
      break;}

 cout<<n+1<<setw(10)<<heads<<setw(10)<<tails;

 if(m>0)

 printf("\n赢了%d元\n",m);

 else
     printf("\n输了%d元\n",-m);
  return 0;

}
如何统计得出该游戏是否可以赚钱?
搜索更多相关主题的帖子: color 
2011-08-28 08:10
czsbc
Rank: 10Rank: 10Rank: 10
等 级:青峰侠
帖 子:469
专家分:1700
注 册:2008-12-13
收藏
得分:0 
你是问用的数学算出来,还是要编程统计出来。
我算了一下,最后的期望好像是∑(7-2i)*(1/4)*(3/4)^(i-1)   (i=1,2,3···)
上面的式子算出来是-1
2011-08-28 13:28
快速回复:请帮忙看看并补充一下
数据加载中...
 
   



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

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