我是C#新手,在我创建的这个随机数猜谜游戏中,我很难理解哪里出错了。我试图在第30行的do time循环中添加一个random.next命令,当我运行程序时,它会说我的猜测太高或太低,我不明白出了什么问题。这是未完成的代码:
static void Main(string[] args)
{
Random random = new Random();
int numberToGuess = random.Next(100) + 1;
int userGuess = 0;
string name;
Console.WriteLine("What is your name?");
name = Convert.ToString(Console.ReadLine());
Console.WriteLine("In this game you need to guess which number the computer has picked in the range of 1 to 100."
+ Environment.NewLine + "If the number you enter is too high or too low the program will display this, " +
Environment.NewLine + "try to make the least amount of guesses as possible!" + Environment.NewLine
+ "==========================================================================================================");
do
{
do
{
Console.Write("Enter your guess: ");
userGuess = Convert.ToInt32(Console.ReadLine());
if (userGuess > numberToGuess)
{
Console.WriteLine(userGuess + " is too high!");
}
else if (userGuess < numberToGuess)
{
Console.WriteLine(userGuess + " is too low!");
}
else
{
Console.WriteLine(userGuess + " SPOT ON! Congratulations.");
}
numberToGuess = random.Next(100) + 1;
} while (userGuess != numberToGuess);
Console.WriteLine("Do you want to continue?");
} while (Console.ReadLine().ToUpper() == "YES");
}
如果我删除numberTo猜测=随机。下一个(100)1;代码工作正常,但重复相同的随机数。
请帮忙。
此方法将返回一个真正的随机数。
公共共享函数R的整数(最小值为整数,最大值为整数)作为整数暗淡兰德作为新系统。安全性。密码学。RNGCryptoServiceProvider暗淡缩放为Uintger=Uintger。MaxValue同时缩放=Uintger。MaxValue'获取四个随机字节。暗淡four_bytes作为字节()=新字节(3){}兰德。GetBytes(four_bytes)
' Convert that into an uint.
scale = BitConverter.ToUInt32(four_bytes, 0)
End While
' Add min to the scaled difference between max and min.
Return CInt(min + (max - min) * (scale / CDbl(UInteger.MaxValue)))
End Function
<代码><代码>
您的猜测范围非常高1到100,每次您都再次生成随机数。例如,只需减小您的随机生成器大小
int numberToGuess = random.Next(5) + 1;
首先检查它是否工作良好,然后考虑扩展它。
调试您的应用程序替换
Console.Write("Enter your guess: ");
具有
Console.Write("Enter your guess (" + numberToGuess + "): ");
你会看到数字猜测每次都在变化。。。您应该注释该行,并仅使用生成的第一个随机数。
我正在尝试使用For循环将一个随机整数(0-2)添加到一个变量中指定的次数。我遇到的问题是,循环不是每次循环时都使用一个新的随机数,所以,如果我输入9,我只能得到0、9,或者18。 我希望一个对象返回的键“a”和“b”具有不同的数值。
在本例中,最大值仅为5,因此我可以逐个检查副本,但如何以更简单的方式执行此操作?例如,如果最大值为20,该怎么办?谢谢
问题内容: 出于示例目的… 所以我最终得到了string1,string2,string3 …都等于 问题答案: 但实际上将一个值与另一个值相关联的最佳方法是字典。这就是它的设计目的!
有没有一种方法可以在NetworkX甚至没有NetworkX的情况下做到这一点?
我有一个的数组,它的值不同,称为。我想创建一个二维数组(称为),其中第一个维度的大小是数组的长度,第二个维度的大小是该索引处的整数值。我希望下面的代码能更容易理解我的问题。 我的实际代码,sizes数组更大,所以如果可能的话,我希望避免大量重复的代码行。 我是的新手,但我读过关于的文章。我想我可以创建一个函数来返回这个数组,但是我还没有让它工作。 我还认为我可以循环数组,并为每个创建一个具有该大小