1

我敢肯定这是微不足道的,但我无法弄清楚。我的老师刚刚向我们展示了如何使用 .Next(); 创建随机数。昨晚的声明,我被告知要写一个刺激两个掷骰子并比较它们的作业。我写出了代码,一切正常,直到我将 dice2 添加到我的 console.writeline 中。我在这里想念什么?

一旦我添加了 dice2,我得到了以下错误,当我删除 dice2 时它们都消失了。

  1. ) 预期的
  2. ; 预期的
  3. 无效的表达式术语 ')'
  4. 只有赋值、调用、递增、递减、等待和新对象表达式可以用作语句。

这是我的代码

Random m = new Random();
Random m1 = new Random();
string again;

do
{

    int dice1 = m.Next(1, 6);
    int dice2 = m1.Next(1, 6);

    if (dice1 == 6 && dice2 == 6)
    {
        Console.WriteLine("You rolled boxcars");
    }
    else if (dice1 == 1 && dice2 == 1)
    {
        Console.WriteLine("You rolled snake-eyes");
    }
    else
    {
        Console.WriteLine("You rolled a {0} and a {1}", dice1 dice2);
    }
        Console.WriteLine("Again? (y/n)");
    again = Console.ReadLine();

} while (again == "y");

编辑

添加逗号后,我注意到我得到了相同的值,所以在做了一些研究后,我删除了 Random m1 = new Random(); 并更改了 int dice2 = m1.Next(1, 6); 到 int dice2 = m.Next(1, 6); 它奏效了。然后我意识到它没有给我任何 6 个值,所以我将其更改为 (1, 7) 并且它运行良好

4

2 回答 2

3

你少了一个逗号:

Console.WriteLine("You rolled a {0} and a {1}", dice1, dice2);
//                                                  ^^^
于 2013-10-23T02:14:03.170 回答
2

您在这一行dice1之间缺少逗号:dice2

Console.WriteLine("You rolled a {0} and a {1}", dice1 dice2);

应该:

Console.WriteLine("You rolled a {0} and a {1}", dice1, dice2);
于 2013-10-23T02:14:13.087 回答