PHP
downloads | documentation | faq | getting help | mailing lists | reporting bugs | php.net sites | links | conferences | my php.net

search for in the

log10> <is_nan
Last updated: Fri, 10 Oct 2008

view this page in

lcg_value

(PHP 4, PHP 5)

lcg_valueCombined linear congruential generator

Description

float lcg_value ( void )

lcg_value() returns a pseudo random number in the range of (0, 1). The function combines two CGs with periods of 2^31 - 85 and 2^31 - 249. The period of this function is equal to the product of both primes.

Return Values

A pseudo random float value in the range of (0, 1)

See Also



log10> <is_nan
Last updated: Fri, 10 Oct 2008
 
add a note add a note User Contributed Notes
lcg_value
jfdsmit at gmail dot com
17-Dec-2007 03:44
Be warned, the function provided by mr dot joebert at gmail dot com has a serious tendency to return $min more often than anything else, especially when $min and $max are close. It also will never return $max if $min is negative. rok kralj gmail com's implementation does not have this problem, as it operates on the difference between $max and $min instead of $max itself.
mr dot joebert at gmail dot com
22-Nov-2007 08:20
<?php
function random_float ($min,$max) {
   return
max($min, lcg_value() * $max);
}
?>
rok kralj gmail com
05-Jun-2007 05:54
An elegant way to return random float between two numbers:

<?php
function random_float ($min,$max) {
   return (
$min+lcg_value()*(abs($max-$min)));
}
?>

log10> <is_nan
Last updated: Fri, 10 Oct 2008
 
 
show source | credits | stats | sitemap | contact | advertising | mirror sites