gpt4 book ai didi

c++ - for循环比较二维数组???求助!

转载 作者:行者123 更新时间:2023-11-28 08:26:08 26 4
gpt4 key购买 nike

我目前正在开发一款玩家玩老虎机的游戏。该游戏基于用户停止金钱,100 瑞典克朗、300 瑞典克朗或 500 瑞典克朗。然后用户为每场比赛下注。独臂强盗在九个棋子区域中随机吐出三个不同的符号。见图:

alt text游戏的目标是尽可能多地获得相同符号的行、列和对角线。在我做的上面的例子中,当上线和下线具有相同的符号时获得利润,连续 2 个相同的 simbles (aaa)。以下利润系统取决于具有相同符号的行数:

•A系列提供2*赌注

•两条线给出 3 * 下注

•三排给出 4 * 赌注

四行给出 5 * 赌注

•五行给出 7 * 赌注

•完整的比赛 field 给出 10 * 赌注

我不知道如何解决这个支付问题?我可以使用什么代码?我应该使用for循环吗?我是 c++ 的新手,所以我遇到了麻烦。我在这个游戏上花了很多时间,但就是无法解决它。请帮我!现在这是我的一小部分代码:我只想比较结果。有人可以帮助我比较我刚才描述的先前目标之后的结果吗?我很感谢我得到的所有帮助!

 srand(time(0)); 
char game[3][3] = {{'O','X','A'}, {'X','A','X'}, {'A','O','O'}};

for (int i = 0; i < 3; ++i)
{
int r = rand() % 3;
cout << " " <<game[r][0] << " | " << game[r][1] << " | " << game[r][2] << "\n";
cout << "___|___|___\n";
}


//.....compare the two-dimensional array????

最佳答案

您可以使用 comparison operators检查矩阵中的元素是否彼此相等。您已经知道如何访问矩阵的每个元素(game[r][0] 等)。

现在,您所要做的就是检查沿行、对角线等的元素是否相等。

此外,您需要存储您随机生成的符号。您应该创建一个名为 results 的新矩阵(或二维数组)。

例如

char results[3][3];

现在,当您显示老虎机结果时,将其存储在这个二维数组中:

for(int i = 0; i < 3; ++i)
{
int r = rand() % 3;
cout << " " <<game[r][0] << " | " << game[r][1] << " | " << game[r][2] << "\n";
cout << "___|___|___\n";
// Store
for(int j = 0; j < 3; ++j) results[r][j] = game[r][j];
}

上面,我只是使用了另一个循环来存储您显示的内容。

为了帮助您开始,下面介绍了如何沿水平线检查矩阵的所有 3 行:

bool horz_equal[3];
for(int r = 0; r < 3; ++r)
{
horz_equal[r] = (results[r][0] == results[r][1] && results[r][1] == results[r][2]);
}

此外,您应该考虑随机生成符号的方法。还有更好的方法!

关于c++ - for循环比较二维数组???求助!,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4005097/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com