如何生成 0.xyz 和 0.abc 之间的随机数?

How do you generate a random number between 0.xyz and 0.abc?

在 MATLAB 中,rand 可用于生成 0 到 1 之间的随机数。我可以缩放它以使其位于 0.01 和 0.02 之间,如下所示:

c=rand;
c=c*0.01+0.01;

0.xyz0.abc区间有没有更好的生成随机数的方法?

不,这几乎是生成限制在特定范围内的随机数的最佳方法。假设 0.abc > 0.xyz,您只需执行:

c = (n - m)*rand(N,1) + m;

首先,您将在 [0, n - m] 之间生成 N 个随机数,这是上述语句的第一部分所做的,然后添加 m,这将翻译您的范围,以便值为 [m, n]。对于您的情况,m = 0.xyzn = 0.abc.