如何生成 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.xyz
和0.abc
区间有没有更好的生成随机数的方法?
不,这几乎是生成限制在特定范围内的随机数的最佳方法。假设 0.abc > 0.xyz
,您只需执行:
c = (n - m)*rand(N,1) + m;
首先,您将在 [0, n - m]
之间生成 N
个随机数,这是上述语句的第一部分所做的,然后添加 m
,这将翻译您的范围,以便值为 [m, n]
。对于您的情况,m = 0.xyz
和 n = 0.abc
.
在 MATLAB 中,rand
可用于生成 0 到 1 之间的随机数。我可以缩放它以使其位于 0.01 和 0.02 之间,如下所示:
c=rand;
c=c*0.01+0.01;
在0.xyz
和0.abc
区间有没有更好的生成随机数的方法?
不,这几乎是生成限制在特定范围内的随机数的最佳方法。假设 0.abc > 0.xyz
,您只需执行:
c = (n - m)*rand(N,1) + m;
首先,您将在 [0, n - m]
之间生成 N
个随机数,这是上述语句的第一部分所做的,然后添加 m
,这将翻译您的范围,以便值为 [m, n]
。对于您的情况,m = 0.xyz
和 n = 0.abc
.