bash - Why do I not see the full expected range of random numbers? -
this question has answer here:
- random number range in bash script 15 answers
i expect below code generate (quasi) random numbers between 0.9 , 1.0 rh.
randno5=$((random % 100001)) upper_limit5=$(echo "scale=10; 1*1.0"|bc) lower_limit5=$(echo "scale=10; 1*0.9"|bc) range5=$(echo "scale=10; $upper_limit5-$lower_limit5"|bc) rh=`echo "scale=10; ${lower_limit5}+${range5}*${randno5}/100001" |bc`
however, when run code value between 0.9 , 0.933(3sf). why case?
$random
is, @ most, 32767:
random each time parameter referenced, random integer between 0 , 32767 generated. sequence of random numbers may initialized assigning value random. if random unset, loses special properties, if subsequently reset.
your modulus have no effect generated numbers restricted range.
Comments
Post a Comment