在MATLAB中,rand
可用于生成0到1之间的随机数。我可以将其缩放到0.01到0.02之间,如下所示:
c=rand;
c=c*0.01+0.01;
在[{1}}和0.xyz
的区间内,是否有更好的方法来生成随机数?
答案 0 :(得分:3)
这不是生成限制在某个范围内的随机数的最佳方法。假设0.abc > 0.xyz
,您只需执行:
c = (n - m)*rand(N,1) + m;
首先,您会在N
之间生成[0, n - m]
个随机数,这是上述语句的第一部分所做的,然后添加m
,这将转换您的范围值为[m, n]
。对于您的情况,m = 0.xyz
和n = 0.abc
。