On 18 Dec 2003 02:21:34 -0800, steven shingler
<st*************@virgin.net> wrote:
why on earth does:
for(int i =0;i<5;i++)
{
Response.Write(new Random().Next(0,1000).ToString() + "<br>");
}
give me: (for example)
400
400
400
400
400
??
(I was sort of expecting a different number each time)
any ideas very gratefully received - apologies if I'm being thick.
Because you create a Random() by giving it a seed.
It isn't completely random so when you give it the same seed it will
produce the same series of numbers.
So... create a Random only once. I usually choose a seed number based on
current time, since you have no way of knowing what this number will be.
Random rand = new Random((int)DateTime.Now.Ticks);
for(int i =0;i<5;i++)
{
Response.Write(rand.Next(0,1000).ToString() + "<br>");
}
--
Using M2, Opera's revolutionary e-mail client:
http://www.opera.com/m2/