使用Javascript计算分数

时间:2014-08-28 10:53:36

标签: javascript

正如标题所暗示的那样。我该怎么做?

我必须使用纯粹的JS,而且我真的很擅长(就像真的很新)。请原谅我的noob问题。 :)

我的代码如下所示:

if (questionArr[questionId].choices[k].tf === true) {
   score = score + questionArr[questionId].choices[k].points; //add points if answer is correct
} else {
   if ((score - questionArr[questionId].choices[k].points) > 0) {
       score = score - questionArr[questionId].choices[k].points; //subtract points if answer is wrong
   } else {
      score = 0;
   }
}

我的问题如下:让我们说问题有4个答案,第一个给出5分,第二个给出错误,减去6分,第三个是错误减去3分,第四个是正确给出10分。 / p>

所以我想最终得到6分,因为:

+5 -6 -3 = -4
-4 +10 = 6

不幸的是,当我运行它时,我的代码要么是当它达到0时要么减少猜测的数量。这使得我无法在得分低于0时计算得分。最后如果总得分保持在低于0我希望它自动设置为0,这就是我最后尝试用else做的事情。

我希望有人可以帮助我,因为我不知道如何解决这个问题。

1 个答案:

答案 0 :(得分:0)

看起来你只需要在代码之外移动if语句(大概)循环遍历所有问题。即:

//guessing start of for loop that sets questionId and k
if (questionArr[questionId].choices[k].tf === true) {
    score = score + questionArr[questionId].choices[k].points; //add points if answer is correct
} else {
    score = score - questionArr[questionId].choices[k].points; //subtract points if answer is wrong
}
//end of loop
if (score < 0) score = 0;