这段代码是真随机数或伪随机生成器,为什么请? [英] This code true random number or pseudo random generator and why please ?

查看:90
本文介绍了这段代码是真随机数或伪随机生成器,为什么请?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

private void BarcodeButton_Click(object sender, EventArgs e)
        {
            try
            {
                int smallestNumber = 100000;
            int biggestNumber = 5000000;

            //Determine the amount of random numbers
            int amountOfRandomNumbers = 10;

            //Create a list of numbers from which the routine
            //shall choose the result numbers
            var possibleNumbers = new List<int>();
            for (int i = smallestNumber; i <= biggestNumber; i++)
                possibleNumbers.Add(i);

            var result = new List<int>();

            //Initialize a random number generator
            Random rand = new Random();

            //For-loop which picks each round a unique random number
            for (int i = 0; i < amountOfRandomNumbers; i++)
            {
                //Generate random number
                int randomNumber = rand.Next(1, possibleNumbers.Count) - 1;
                barcodeTextEdit.Text = randomNumber.ToString();
                //Remove the chosen result number from possible numbers list
                possibleNumbers.RemoveAt(randomNumber);
            }





我的尝试:



此代码为真随机数或伪随机生成器,请问为什么?



What I have tried:

this code true random number or pseudo random generator and why please ?

推荐答案

伪随机 - 这里有一个很好的解释 C#深度:随机数 [ ^ ]
pseudo random - there's a great explanation here C# in Depth: Random numbers[^]


所有基于软件的方法都是伪随机的:它们使用固定算法生成随机序列通过提供相同的种子值,可以重复数字和整个序列。 Random类使用系统时钟在创建实例时初始化序列,如果快速连续创建两个实例,可以很容易地看到。
All software based methods are pseudo random: They use a "fixed algorithm" to generate the sequence of "random" numbers and the whole sequence can be repeated by providing the same seed value. The Random class uses the system clock to initialize the sequence when the instance is created, as can easily be seen if two instances are created in quick succession.


这篇关于这段代码是真随机数或伪随机生成器,为什么请?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆