[Subject Prev][Subject Next][Thread Prev][Thread Next][Subject Index][Thread Index]
Re: random numbers
your program is using the same seed value everytime it executes.checkout
"man rand" and use time function to get a random seed value.If you think
you would be using the funtion more than once within a second then use seed
as a static variable+timeofday.even if the funtion is recalled within a
second it will never have the same seed.obviously you will also do a seed++
in the function.
At 12:17 PM 06/14/2000 +0530, you wrote:
>Deepak Yadav wrote:
>>
>> my program below generates same set of random numbers every time i run it. i
>> am using linux 6.2 and its random daemon is ON. plz help
>>
>> #include<stdio.h>
>> #include<stdlib.h>
>>
>> int main(int argc, char *argv[])
>> {
>> char ch;
>> int random;
>> int i = 0;
>> srand(1);
>> while (i < 5 )
>> {
>> random = rand();
>> printf("\nrandom : %d\n",random);
>> i++;
>> }
>> printf("\n\n");
>> return 0;
>> }
>
>you are seeding the random number generator always with 1. The random
>number generator generates Pseudo-Random Sequences. With the same seed,
>the same sequence will be generated.
>
>To get some random nos., u should seed the generator with something like
>say f(timeofday).
>
>the man page for random treats this *quite* exhaustively!
>
>sachin
>
>-----------------------------------------------------------------------
>The LIP mailing list archives are available at:
>http://lists.linux-india.org/cgi-bin/wilma/linux-india-programmers