On Thu, 01 Dec 2005, Ted Schuerzinger wrote:
> > Just for fun I did a little test.
> > for (1 .. 10000) {
> > my $fn = rand();
> > ++$dup and next if exists $num{$fn};
> > $num{$fn} = 1;
> > }
> > print scalar keys %num, " unique numbers. $dup duplicates produced\n";
> >
>
> Just for fun, I changed one of the lines in that to
>
> for (1 .. 1000000) {
>
> When I ran the modified script, I got 32768 unique numbers, with 967232
> duplicates! As 32768 is a power of 2, I'm wondering if there's a limit on
> the number of keys one may have in a hash.
No, there isn't. But rand() uses only 15 bits in the default implementation,
so you cannot generate more than 2**15 different values:
C:>perl -V:randbits
randbits='15';
Cheers,
-Jan
_______________________________________________
Perl-Win32-Users mailing list
[email protected]
To unsubscribe: http://listserv.ActiveState.com/mailman/mysubs