我確信這是微不足道的,但我無法弄清楚。我的老師向我們展示瞭如何使用.Next()創建隨機數。聲明昨天晚上,我被告知寫一個任務,刺激兩個骰子卷並比較它們。我寫了代碼,一切正常,直到我添加到我的console.writeline dice2。我在這裏錯過了什麼?試圖讓一個基本的骰子程序工作時出錯
一旦我添加了dice2,我得到了以下錯誤,當我移除dice2時它們全都消失。
- )預計
- ;預期
- 無效的表達式項')'
- 只能將賦值,調用,增量,減量,等待和新對象表達式用作語句。
這裏是我的代碼
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");
編輯
加入我注意到,我得到了相同的值的逗號後這樣做了一些研究之後,我刪除了隨機M1 =新的隨機();並更改int dice2 = m1.Next(1,6);到int dice2 = m.Next(1,6);它的工作。後來我意識到,它不給我任何6個值,所以我把它改爲(1,7)和它的工作完美
因爲你創建兩個「隨機」實例同時它們幾乎總是具有相同的種子,因此會生成完全相同的隨機數序列,因此您的兩個值將始終匹配。與其創建兩個隨機數字生成器並從每個數字生成一個值,只需創建一個隨機數字生成器並向其請求兩個隨機數字。 – Servy
是的,我剛剛注意到了。我刪除了隨機m1 =新隨機();並更改int dice2 = m1.Next(1,6);到int dice2 = m.Next(1,6);它的工作完美。然後我意識到它沒有給我任何6個值,所以我將它改爲(1,7)並且它完美地工作。 – user2781666