如何在 IF 语句 C++ 中创建 "Unless condition"
How can I make an "Unless condition" in an IF statement c++
我正在用 C++ 制作 21 点游戏,快结束了!我正在做我的输赢报表。但我的问题是,我需要我的 if 语句来确定庄家的s/players 手牌是否大于或小于另一手牌,它还需要检查任一手牌是否超过 21.
所以让 if 语句确定这不是问题我只需要它不通过一个 if 语句如果另一个超过 21
if (dealerTotal > 21 || playerTotal > dealerTotal)//For win
{
}
if (playerTotal > 21 || dealerTotal > playerTotal)// For lose
{
}
因此,第一个需要通过 IF UNLESS“playerTotal is over 21”,而下一个 IF
则相反
如有任何建议,我们将不胜感激。
非常感谢!
在Blackjack中,如果闲家和庄家的点数都大于21(称为“爆牌”),则闲家输,庄家赢。因此,您必须相应地设计逻辑:
if (
//player busted, or
playerTotal > 21 ||
//dealer not busted and dealer has more points than player
( dealerTotal <= 21 && dealerTotal > playerTotal )
)
{
printf( "Dealer wins!\n" );
}
else if ( dealerTotal == playerTotal )
{
printf( "Tie!\n" );
}
else
{
printf( "Player wins!\n" );
}
请注意,第一个 if
条件中的括号不是必需的,因为 &&
比 ||
具有更高的 operator precedence。我只是为了清楚起见才添加它们。
此逻辑没有考虑到 21 点 21 点对非 21 点非 21 点的胜利。如果一方有 21 点而另一方有 21 点非 21 点,则上述逻辑将错误地报告平局。如果不查看更多代码就无法解决此问题,因为您只提供变量 playerTotal
和 dealerTotal
,它们没有指定一方是否有 blackjack。
我正在用 C++ 制作 21 点游戏,快结束了!我正在做我的输赢报表。但我的问题是,我需要我的 if 语句来确定庄家的s/players 手牌是否大于或小于另一手牌,它还需要检查任一手牌是否超过 21.
所以让 if 语句确定这不是问题我只需要它不通过一个 if 语句如果另一个超过 21
if (dealerTotal > 21 || playerTotal > dealerTotal)//For win
{
}
if (playerTotal > 21 || dealerTotal > playerTotal)// For lose
{
}
因此,第一个需要通过 IF UNLESS“playerTotal is over 21”,而下一个 IF
则相反如有任何建议,我们将不胜感激。 非常感谢!
在Blackjack中,如果闲家和庄家的点数都大于21(称为“爆牌”),则闲家输,庄家赢。因此,您必须相应地设计逻辑:
if (
//player busted, or
playerTotal > 21 ||
//dealer not busted and dealer has more points than player
( dealerTotal <= 21 && dealerTotal > playerTotal )
)
{
printf( "Dealer wins!\n" );
}
else if ( dealerTotal == playerTotal )
{
printf( "Tie!\n" );
}
else
{
printf( "Player wins!\n" );
}
请注意,第一个 if
条件中的括号不是必需的,因为 &&
比 ||
具有更高的 operator precedence。我只是为了清楚起见才添加它们。
此逻辑没有考虑到 21 点 21 点对非 21 点非 21 点的胜利。如果一方有 21 点而另一方有 21 点非 21 点,则上述逻辑将错误地报告平局。如果不查看更多代码就无法解决此问题,因为您只提供变量 playerTotal
和 dealerTotal
,它们没有指定一方是否有 blackjack。