我一直在寻找解决方案,但我无法理解那些复杂详细的算法,因为我在c#中相当新,现在我正在尝试创建这个程序。 我希望随机数生成器生成1到4,它不会重复相同的数字 4个不同的文本框,但当我执行如下代码时: -
Random random = new Random();
var numberNo = Enumerable.Range(1, 4);
var shuffled = numberNo.OrderBy( a => random.NextDouble());
txtrnd1.Text = String.Join("",shuffled);
txtrnd2.Text = String.Join("",shuffled);
txtrnd3.Text = String.Join("",shuffled);
txtrnd4.Text = String.Join("",shuffled);
我获得的结果是(对于4个文本框:textbox1将显示" 1342",textbox2将显示" 1234"等)在文本框中 但我想要的4个文本框的结果是(例如textbox1将显示" 1" textbox2将显示" 2"等)在4个不同的文本框中,以便我可以比较它用户输入我在我的另一个程序中做了
int intrandomnumber1;
Random randomnumber = new Random();
intrandomnumber1 = randomnumber.Next(1, 10);
userinput1.Text = Convert.ToString(intrandomnumber1);
提前感谢任何帮助和感谢!
答案 0 :(得分:0)
如果您查看每个文本框中的文本,您会发现它们都包含1-4的完整列表,随机排列。因此,您应该遍历shuffled
一次以获取列表。
最简单的方法是从枚举中创建System.Collections.Generic.List<int>
:
List<int> shuffledList = new List<int>(shuffled);