【发布时间】:2015-02-14 17:32:35
【问题描述】:
我希望下面的代码能够为 RH 生成介于 0.9 和 1.0 之间的(准)随机数。
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`
但是,当我运行此代码时,我得到的值介于 0.9 和 0.933(3sf) 之间。为什么会这样?
【问题讨论】:
-
我在对您的previous question 的评论中涵盖了
RANDOM的范围。 -
你做到了,但我第一次没有得到它。