随机骰子游戏
c++ Dice Game With Random
先掷m个骰子。去掉6,把剩下的骰子加起来得到r_1。现在掷剩下的骰子,去掉6,把剩下的骰子加起来得到r_2;继续这样做,直到所有的骰子显示6(你没有剩下)。你的分数是S = r_1 + r_2 +…+ r_t, t是掷出的次数。如果S> 5 m,你赢,否则你输。
代码:#include <iostream>
#include <stdio.h> // NULL
#include <stdlib.h> // srand, rand
#include <time.h> // time
using namespace std;
void cheddar();
void feta();
int main(){
//cheddar();
feta();
}
void feta(){
int count = 1;
int ri = 0;
srand(time(0));
int dice[7];
int score = 0;
int m = 7;
int fiveofm = 5*m;
int numofdice = 7;
do{
cout << count << " & ";
for(int i=0;i<7;i++){
dice[i]=rand()%6+1;
}
for(int i=0;i<7;i++){
cout << dice[i] << " & ";
}
for(int i=0;i<7;i++){
if (dice[i] != 6){
ri += dice[i];
//score += dice[i];
}
if (dice[i] == 6){
numofdice--;
}
}
cout << ri << endl;
ri = 0;
count++;
}while(numofdice != 0);
/*
if (score <= fiveofm){
cout << "You lose!" << endl;
}
else if (score > fiveofm){
cout << "You win!" << endl;
}
*/
}
任何帮助都将不胜感激。
编辑:对不起,我在输入问题之前点击了发送。它要么导致一个无限循环,要么不去掉6,然后从那里生成。它只是重新生成5个新数字,并保持与之前相同的数字在右边。
,
`2 & 3 & 3 & 4 & 1 & 5 & 6 & 18`
`6 & 1 & 1 & 6 & 1 & 4 & 2 & 9`
`5 & 3 & 6 & 6 & 5 & 5 & 4 & 22`
`5 & 3 & 3 & 3 & 3 & 6 & 5 & 22`
`2 & 5 & 5 & 3 & 6 & 5 & 1 & 21`
你不应该一直掷所有骰子:
for(int i=0;i<7;i++)
相反,只滚动那些仍然在播放的:
int m = 7;
int numofdice = m;
do{
cout << count << " & ";
for(int i=numofdice-1; i>=0; --i){
dice[i]=rand()%6+1;
cout << dice[i] << " & ";
if (dice[i] == 6){
numofdice--;
}
else{
ri += dice[i];
//score += dice[i];
}
}
cout << ri << endl;
ri = 0;
count++;
}while(numofdice != 0);
(注意,当您这样做时,实际上不需要数组。)
相关文章:
- 为什么随机数生成器不在void函数中随机化数字,而在main函数中随机化
- 为什么 Serial.println(<char[]>);返回随机字符?
- 字符串-C++后显示的随机字符
- C++随机猜数游戏错误
- 随机在石头剪刀布游戏中在C++
- 随机字母生成器游戏
- 人生游戏中的随机播种不能很好地工作
- 如何使计算机每次在猪游戏中进行随机变量
- 为什么我的TicTacToe游戏在生成随机移动时会卡住
- C++完成了随机猜测我的数字游戏Lookover
- 如何在游戏板中放置一艘随机飞船
- C++中的可视化随机猜测游戏
- 使用do while循环和while循环来编写一个程序来运行随机猜谜游戏…我卡在了do while循环上
- 随机生成器猜游戏
- 游戏有时不会执行随机选择的策略
- C++随机数字游戏,rand正在选择一个不是来自该集的数字
- 在cocos2d-x中的游戏场景中随机移动障碍物
- 战舰游戏-随机坐标c++
- 随机骰子游戏
- 如何让敌人在一定距离内随机循环并跟随玩家?c++主机游戏