Vse o Programiranju 3

Enaka naključna števila

Enaka naključna števila

od Matija Lokar -
Število odgovorov: 0

Nekdo med vami se je "pritoževal", da mu program vedno vrača ista naključna števila.  Poanta težave je bila v tem, da je koda vedno znova ustvarjala nov generator števil. 

Oziroma, kot je ugotovil Dilbert oziroma random.org ;-) 

Glejte program in razliko med metodama vrni in vrniPrav. Ne bi šli v podrobnosti ;-), a poanta je v tem, da se "spodobi" imeti le en generator in iz njega črpati več števil ..

namespace Gen

{
    class Program
    {
        private static Random nak = new Random();
        public static double vrni()
        {
            Random gen = new Random();
            return gen.NextDouble();
        }
        public static double vrniPrav()
        {
            return nak.NextDouble();
        }
        static void Main(string[] args)
        {
            for (int i = 0; i < 10; i++)
            {
                Console.WriteLine(vrni());
            }
            Console.WriteLine("\nPRAV\n");
            for (int i = 0; i < 10; i++)
            {
                Console.WriteLine(vrniPrav());
            }
        }
    }
}