卡计数功能

时间:2016-01-11 22:15:21

标签: javascript

var count = 0;
function cc(card) {
  if (card <= 6){
    count++;
  }
  else if (card >= 10){
    count--;
  }
  else {
    count += 0;
  } 
  return count;
}

cc(2); 
cc("K"); 
cc(7); 
cc('K'); 
cc('A');

在JavaScript中编写卡片计数功能。如果count <= 0应该返回count + " Hold"。如果count > 0,则应返回count + " Bet"。我的问题是放置返回的位置,以便函数打印这些输出而不返回并退出函数。

9 个答案:

答案 0 :(得分:4)

你快到了。您只需在函数末尾的if...else...中添加return语句,以便在计算完所有卡后显示结果。此外,为了正确计算卡片(二十一点规则),您必须将else...if...条件更改为else if (card <= 9) 字符串(“K”)才算作 -1 ,如下:

var count = 0;

function cc(card) {
if (card <= 6) {
  count++;
} else if (card <= 9) {
  count += 0;
} else {
  count--;
}
if (count <= 0){
  return count + " Hold"; /* Return here */
} else {
  return count + " Bet";  /* and here */
}

}

cc(2); cc(3); cc(7); cc('K'); cc('A');

答案 1 :(得分:0)

创建另一个if语句以返回所需的计数:

if (count <= 0) {
    console.log(count + " Hold");
    //or window.alert("Same text here");
}
else {
    console.log(return count + " Bet");
    //or window.alert("Same text here");
} 

答案 2 :(得分:0)

您可以将返回值放在if语句中,例如:

if (card <=6) {
count++;
return count + " Bet";
} 
else if (card >= 10) {
count--;
return count + " Hold;
}

我还在学习,但我在FCC遇到了这个问题,这就是我解决它的方法。

答案 3 :(得分:0)

使用switch

var count = 0;

function cc(card) {
  // Only change code below this line

  switch (card) {
    case 2:
    case 3:
    case 4:
    case 5:
    case 6:
      count++;
      break;
    case 10:
    case "J":
    case "Q":
    case "K":
    case "A":
      count--;
      break;
  }

  if (count > 0) {
    return count + " Bet";
  } else {
    return count + " Hold";
  }
  //return "Change Me";
  // Only change code above this line
}

// Add/remove calls to test your function.
// Note: Only the last will display
cc(2); cc(3); cc(7); cc('K'); cc('A');

答案 4 :(得分:0)

我只是添加了0个案例:

var count = 0;

function cc(card) {
// Only change code below this line


switch (card){
case 2:
case 3:
case 4:
case 5:
case 6:
  count++;
  break;
case 7:
case 8:
case 9:
  count += 0;
  break;
case 10:
case "J":
case "Q":
case "K":
case "A":
  count--;
  break;
}
if (count > 0){
return count + " Bet";
}else if (count<=0) {
return count + " Hold";
}
}

答案 5 :(得分:0)

我的回答:

LowValueCards = [2,3,4,5,6];
NoValueCards = [7,8,9];
HighValueCards = [10,"J","Q","K","A"];

if (LowValueCards.includes(card)) 
{
   count += 1;
} 
else if (NoValueCards.includes(card)) 
{
   count += 0;
}
else if (HighValueCards.includes(card))
{
   count -=1;
} 

return count + (count > 0 ? " Bet" : " Hold");

答案 6 :(得分:0)

这是我的解决方案,您可以在返回中使用三元运算符:)

var count = 0;

  
function cc(card) {
  // Only change code below this line
  switch(card){
    
    case 2:
    case 3:
    case 4:
    case 5:
    case 6:
      count++;
      break;
      
    case 7:
    case 8:
    case 9:
      break;
      
    case 10:
    case 'J':
    case 'Q':
    case 'K':
    case 'A':
      count--;
      break;
      
  }
  
  
  return  count>0?count + " Bet":count + " Hold";
  // Only change code above this line
}

// Add/remove calls to test your function.
// Note: Only the last will display
cc(2); cc(3); cc(7); cc('K'); cc('A');

答案 7 :(得分:0)

var count = 0;

  
function cc(card) {
  // Only change code below this line
  switch(card){
    
    case 2:
    case 3:
    case 4:
    case 5:
    case 6:
      count++;
      break;
      
    case 7:
    case 8:
    case 9:
      break;
      
    case 10:
    case 'J':
    case 'Q':
    case 'K':
    case 'A':
      count--;
      break;
      
  }
  
  
  return  count>0?count + " Bet":count + " Hold";
  // Only change code above this line
}

// Add/remove calls to test your function.
// Note: Only the last will display
cc(2); cc(3); cc(7); cc('K'); cc('A');

答案 8 :(得分:0)

这就是我在FCC上解决的问题。

    var count = 0;

    function cc(card) {       

    // Only change code below this line

   switch (card){
     case 2:
     case 3:
     case 4:
     case 5:
     case 6:
       count++;       
       break;       

     case 7:
     case 8:
     case 9:
       count = count;       
       break;

     case 10:
     case "J":
     case "Q":
     case "K":
     case "A":
       count--;       
       break;
   }

  if (count>0){
    return count + " Bet";
  }
  else return count + " Hold";
  // Only change code above this line
}

// Add/remove calls to test your function.
// Note: Only the last will display
cc(2); cc("J"); cc(9); cc(2); cc(7);