Build a Card Counting Assistant - Build a Card Counting Assistant

Tell us what’s happening:

Hello everyone,
I’m not quite sure how to phrase my question, but tests 4, 6, 8, and 9 fail, even though my function passes the other tests.

Your code so far

let count = 0;

function cc(card) {

  if (card <= 6 && count > 0) {
    return (count + 1) +" Bet";
  } else if (card <= 6 && count <= 0) {
    return (count + 1) +" Hold";
  } else if (card <= 9 && count > 0) {
    return count + " Bet";
  } else if (card <= 9 && count <= 0) {
    return count + " Hold";
  } else if ((card === 10 || card === "J" || card === "Q" || card === "K" || card === "A") && (count > 0)) {
return count - 1 + " Bet";
  } else if ((card === 10 || card === "J" || card === "Q" || card === "K" || card === "A") && (count <= 0)) {
return count - 1 + " Hold";
  }
}

console.log(cc(6));

Your browser information:

User Agent is: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/141.0.0.0 Safari/537.36

Challenge Information:

Build a Card Counting Assistant - Build a Card Counting Assistant

What are tests 4, 6, 8, and 9?

What specific parts of your code do you think meet those requirements?

1 Like

you may want to divide card counting from betting, right now your logic is all jumbled up making it difficult to get correct results

1 Like

thanks all, so for this i just used prefix operand ++ to increment before return:

function cc(card) {

if (card <= 6 && count > 0) {

return ++count +" Bet";

} else if (card <= 6 && count <= 0) {

return ++count +" Hold";

} else if (card <= 9 && count > 0) {

return count + " Bet";

} else if (card <= 9 && count <= 0) {

return count + " Hold";

} else if ((card === 10 || card === “J” || card === “Q” || card === “K” || card === “A”) && (count > 0)) {

return --count + " Bet";

} else if ((card === 10 || card === “J” || card === “Q” || card === “K” || card === “A”) && (count <= 0)) {

return --count + " Hold";

}

}

That’s not a good solution. The logic for incrementing the count and the logic for the return statement should be totally separate

Okay, I’ll separate them for clarity.:ok_hand: