💀😸 内卷起来家银们 🤥💀
介绍:
每个骰子有六面,点数分别为1、2、3、4、5、6,游戏者在程序开始时输入一个无符号整数,作为产生随机数的种子。
每轮投两次骰子:
- 第一轮如果和数为 7 或 11 则为胜,游戏结束;
- 和数为 2、3 或 12 则为负,游戏结束;
- 和数为其它值则将此值作为自己的点数,继续第二轮、第三轮…直到某轮的和数等于点数则取胜,若在此前出现和数为7则为负。
编程实现:
设计函数rollDice
,负责模拟投骰子的过程,实现计算和数并将和数返回。main
函数专注于游戏的过程,调用rollDice
函数来实现投骰子游戏。
#include <iostream>
#include <cstdlib>
using namespace std;
enum game{WIN,LOST,PLAYNG};//枚举四种情况
//投骰子、计算和数、返回和数
int rollDice(){
int d1=1+rand()%6;
int d2=1+rand()%6;
int sum=d1+d2;
cout<<"player rolled "<<d1<<"+"<<d2<<"="<<sum<<endl;
return sum;
}
int main(){
int sum,mypoint;
game sta;
unsigned seed;
cin>>seed;
srand(seed); //seed随机数种子
sum=rollDice();
switch(sum)
{
case 7:
case 11:
sta=WIN;
break;
case 2:
case 3:
case 12:
sta=LOST;
break;
default:
sta=PLAYNG;
mypoint=sum;
cout<<"pointis: "<<mypoint<<endl;
break;
}
while(sta==PLAYNG)//开始进行第二轮......
{
sum=rollDice();
if(sum==mypoint)
sta=WIN;
else if(sum==7)
sta=LOST;
}
if(sta==WIN)
cout<<"player wins"<<endl;
else
cout<<"player loses"<<endl;
return 0;
}
有兴趣的小伙伴可以试着运行