永发信息网

perl 生成float随机数

答案:2  悬赏:0  手机版
解决时间 2021-02-02 00:01
  • 提问者网友:缘字诀
  • 2021-02-01 13:35
我需要用perl生成一个from-3.4028234663852886e+38 to -1.1754943508222875e-38 and from +1.1754943508222875e-38 to +3.4028234663852886e+38
应该怎么写?

用rand(4.5783178172075761e+38)-1.1754943508222875e+38生成的都是e+38的
最佳答案
  • 五星知识达人网友:詩光轨車
  • 2021-02-01 14:02
看看下面的代码,能够得到你想要的东西:

$e=rand();
$f=38-rand(76);
$r=$e*10**$f;
print $r;

明白道理吗?首先生成一个0~1的数作为底数,然后生成一个-38~+38的数作为指数,你可以适当调整产生任意需要是数据。
全部回答
  • 1楼网友:迟山
  • 2021-02-01 14:11
my $random = rand(10000);
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯