gpt4 book ai didi

C++ 扑克 : skipping over If statements, 并忽略值

转载 作者:行者123 更新时间:2023-11-28 00:17:02 25 4
gpt4 key购买 nike

<分区>

我一直在用 C++ 创建扑克游戏,我注意到在我确定(或者我认为)玩家的手牌后,它总是显示为皇家同花顺(或 9,就 hand_ranking 而言)。我对其进行了测试,结果是跳过了用于确定手牌的 if 语句。为什么这些语句没有注册,如何修复?附言我知道这段代码有点长,如果你不想看,请继续。

    int hand_ranking = 0;
bool one_pair_bool;
int one_pair;


bool two_pair_bool;
int two1_pair;
int two2_pair;

if (min_all == min2_all){
one_pair = min_all;
one_pair_bool = true;


if (mid_card == max2_all){
two_pair_bool = true;
two1_pair = min_all;
two2_pair = mid_card;

}

else if (max2_all == max_all){
two_pair_bool = true;
two1_pair = min_all;
two2_pair = max2_all;

}
else{
two_pair_bool = false;
}
}
else if (min2_all == mid_card){
one_pair = min2_all;
one_pair_bool = true;

if (max2_all == max_all){
two_pair_bool = true;
two1_pair = min2_all;
two2_pair = max2_all;
}

else {
two_pair_bool = false;
}
}
else if (mid_card == max2_all){
one_pair = mid_card;
one_pair_bool = true;

if (min_all == min2_all){
two_pair_bool = true;
two1_pair = mid_card;
two2_pair = min_all;
}
else{
two_pair_bool = false;
}
}
else if (max2_all == max_all){
one_pair = max2_all;
one_pair_bool = true;

if (min_all == min2_all){
two_pair_bool = true;
two1_pair = max2_all;
two2_pair = min_all;
}
else if (min2_all == mid_card){
two_pair_bool = true;
two1_pair = max2_all;
two2_pair = min2_all;
}
else{
two_pair_bool = false;
}
}
else{
one_pair_bool = false;
}



bool three_of_a_kind;
int three_of_a_kind_number;

if (min_all == min2_all && min2_all == mid_card){
three_of_a_kind = true;
three_of_a_kind_number = min_all;
}

else if (min2_all == mid_card && mid_card == max2_all){
three_of_a_kind = true;
three_of_a_kind_number = min2_all;
}

else if (mid_card == max2_all && max2_all == max_all){
three_of_a_kind = true;
three_of_a_kind_number = mid_card;
}

else {
three_of_a_kind = false;
}


bool straight;
int straight_start;

if (min_all == min2_all - 1 && min2_all == mid_card - 1 && mid_card == max2_all - 1 && max2_all == max_all - 1){
straight = true;
straight_start = min_all;
}
else {
straight = false;
}

bool flush;
char flush_suit;

if (min_suit == min2_suit == mid_suit == max2_suit == max_suit){
flush = true;
flush_suit = min_suit;
}

bool full_house;
int full_house2;
int full_house3;

if (min_all == min2_all && min2_all == mid_card){
if (max2_all == max_all){
full_house = true;
full_house2 = max2_all;
full_house3 = min_all;
}
}

else if (min2_all == mid_card && mid_card == max2_all){

}

else if (mid_card == max2_all && max2_all == max_all){
if (min_all == min2_all){
full_house = true;
full_house2 = min_all;
full_house3 = mid_card;
}
}

else {

}

bool four_of_a_kind;
int four_of_a_kind_number;

if (min_all == min2_all - 1 && min2_all == mid_card - 1 && mid_card == max2_all - 1){
four_of_a_kind = true;
four_of_a_kind_number = min_all;
}
else if (min2_all == mid_card - 1 && mid_card == max2_all - 1 && max2_all == max_all - 1){
four_of_a_kind = true;
four_of_a_kind_number = min2_all;
}

bool straight_flush;
char straight_flush_suit;
int straight_flush_start;

if (min_all == min2_all - 1 && min2_all == mid_card - 1 && mid_card == max2_all - 1 && max2_all == max_all - 1 && min_suit == min2_suit && min2_suit == mid_suit && mid_suit == max2_suit && max2_suit == max_suit){
straight_flush = true;
straight_flush_start = min_all;
straight_flush_suit = min_suit;
}
else {
straight_flush = false;
}

bool royal_flush = false;
char royal_flush_suit;

if (min_all == 1 && min2_all == 10 && mid_card == 11 && max2_all == 12 && max_all == 13 && min_suit == min2_suit && min2_suit == mid_suit && mid_suit == max2_suit && max2_suit == max_suit){
royal_flush = true;
royal_flush_suit = min_suit;
}
else{
royal_flush = false;
}


if (royal_flush = true){
hand_ranking = 9;

}
else if (straight_flush == true){
hand_ranking = 8;
}
else if (four_of_a_kind == true){
hand_ranking = 7;
}
else if (full_house == true){
hand_ranking = 6;
}
else if (flush == true){
hand_ranking = 5;
}
else if (straight == true){
hand_ranking = 4;
}
else if (three_of_a_kind == true){
hand_ranking = 3;
}
else if (two_pair_bool == true){
hand_ranking = 2;
}
else if (one_pair == true){
hand_ranking = 1;
}
else{}

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