C# 如何在统一中增加每个循环的内部分数?
我使用foreach循环检查用户输入的答案,以给出5个乘法问题。(使用实例在开始时显示5个问题) 现在我尝试添加分数计数器,如果答案正确,则将其增加1,并根据分数显示星星。例如,如果分数小于3,则显示1颗星;如果分数小于4,则显示2颗星;如果分数小于5,则显示3颗星。即使所有答案都正确,我也只得到一颗星。有人能告诉我如何做到这一点吗 我尝试在if语句中添加score++。但它不会增加分数值C# 如何在统一中增加每个循环的内部分数?,c#,loops,unity3d,increment,C#,Loops,Unity3d,Increment,我使用foreach循环检查用户输入的答案,以给出5个乘法问题。(使用实例在开始时显示5个问题) 现在我尝试添加分数计数器,如果答案正确,则将其增加1,并根据分数显示星星。例如,如果分数小于3,则显示1颗星;如果分数小于4,则显示2颗星;如果分数小于5,则显示3颗星。即使所有答案都正确,我也只得到一颗星。有人能告诉我如何做到这一点吗 我尝试在if语句中添加score++。但它不会增加分数值 public void CheckButton() { int answer; for
public void CheckButton()
{
int answer;
foreach (TestModeQuestionUI _TestModeQuestionUIRefrence in testModeQuestionExampleList)
{
answer = _TestModeQuestionUIRefrence.GetAnswerInputField();
if ((_TestModeQuestionUIRefrence.a * _TestModeQuestionUIRefrence.b) == answer)
{
_TestModeQuestionUIRefrence.SetResultOfAnswerInputField(1);
score++;
}
else
{
_TestModeQuestionUIRefrence.SetResultOfAnswerInputField(2);
}
}
roundCompletePanel.SetActive(true);
CheckHowManyStars();
ShowRoundCompletePanel(score);
}
这里假设
(_TestModeQuestionUIRefrence.a * _TestModeQuestionUIRefrence.b) == answer
都是float
值从不直接使用=
比较浮点
。他们可能永远不会平等,即使在逻辑上他们应该是平等的。由于不同的原因,它们可能相差很小的“ε”
相反,它使用的正是那个小“ε”作为其相等定义
if (Mathf.Approximately(_TestModeQuestionUIRefrence.a * _TestModeQuestionUIRefrence.b, answer))
它类似于
if (_TestModeQuestionUIRefrence.a * _TestModeQuestionUIRefrence.b - answer <= diferenceSmallEnoughThreshold)
if(_testmodequestionuireference.a*_testmodequestionuireference.b-回答假设
(_TestModeQuestionUIRefrence.a * _TestModeQuestionUIRefrence.b) == answer
都是浮点数
值。从不直接使用==
比较浮点数
。它们可能永远都不相等,即使在逻辑上它们应该相等。它们可能因以下原因而相差很小的“ε”
相反,它使用的正是那个小“ε”作为其相等定义
if (Mathf.Approximately(_TestModeQuestionUIRefrence.a * _TestModeQuestionUIRefrence.b, answer))
它类似于
if (_TestModeQuestionUIRefrence.a * _TestModeQuestionUIRefrence.b - answer <= diferenceSmallEnoughThreshold)
if(\u testmode questionuireference.a*\u testmode questionuireference.b-answer在语句分数++上放一个断点,看看你是否达到了断点。我们无法判断答案是否永远正确或分数++是否错误。在语句分数++上放一个断点,看看你是否达到了断点。我们无法判断答案是否正确永远都不正确,或者分数++是错误的。好的,我将使用Mathf。大概在这里。如果可能的话,添加断点是什么意思?jdweng指的是调试,例如使用Mathf。大概已经解决了分数增加的问题。非常感谢。如果你真的想让这个游戏变得活跃起来,你会的我得花点时间研究那个臭名昭著的“断点”东西!@MKougiouris是的,我使用debug.log,但很抱歉,我不知道它叫什么。现在我知道了。好的,我将使用Mathf。大约在这里。如果可能的话,添加断点是什么意思?请您解释一下。jdweng指的是调试,例如使用Mathf。大约解决了分数增量问题。非常感谢您认真地想让这个游戏活跃起来,你最好花点时间研究一下那个臭名昭著的“断点”东西!@MKougiouris是的,我使用debug.log,但很抱歉我不知道它叫什么。现在我知道了。