我需要帮助,请任何人。我做了一个数组和一个循环,当一个数字被识别时停止。它不应该以这种方式发生。
它掷5个骰子但是当识别出一个数字时,它应该减少下一轮骰子的数量。它总共播放3轮,直到识别出该数字。它应该识别6然后5 ....只给出了三轮。
问题是我希望它之前显示数组中的所有内容,并告诉该数字存在。
public dice()
{
int Round = 0;
int Dice = 5;
int Six = 6;
int Five = 5;
int Four = 4;
int NOW = Six;
do
{
for (int i = 0; i < Dice; i++)
{
{
rolldice();
Console.Write("{0} ", die.Face());
}
}
if (die.Face() == NOW)
{
Dice--;
Console.WriteLine("You got SIX");
Now = Five;
}
Console.WriteLine("ENTER to roll {0} dice", Dice);
Round++;
}
while (Round < 3);
应显示:
4 3 2 4 6 你有六个
ENTER滚动4个骰子
1 1 5 3 你有五个
ENTER滚动3个骰子
答案 0 :(得分:2)
你正在滚动所有骰子,然后只检查最后一个 - 所有测试都在循环之外。
这只是使这项工作迈出的第一步 - 它还有其他各种问题。特别是,我建议只有一个条件,而不是三个......你只想知道任何一个骰子是否具有你正在寻找的当前值。
我暂时将它留在那里,所以你可以通过自己的思考来学习 - 但是当你对自己所拥有的东西感到满意时,你总能询问如何改进解决方案。