首页 > 解决方案 > 随机数生成连续几次给出相同的数字

问题描述

我想多次创建随机数。在下面的片段中,我尝试从同一个随机变量生成 0 到 5 之间的 100 个数字。不过,我连续得到相同的数字。我只是希望我的下一个号码应该与生成的上一个号码不同。

            Random random = new Random();

            for(int i=0;i<100;i++)
            {
                int num   = random.Next(5);
                Console.WriteLine(num);
            }

数字如何显示的图片。

附上数字如何显示的图片!

标签: c#random

解决方案


在真正随机的序列中,您自然会得到重复。如果您想人为地抑制重复,请尝试以下操作:

        Random random = new Random();
        int last = -1;
        for(int i=0;i<100;i++)
        {
            int num;
            do {
              num = random.Next(5);
            } while(num == last)
            last = num;
            Console.WriteLine(num);
        }

推荐阅读