我想生成 0.001 到 0.0015 之间的随机值,这样每次运行 for 循环时,我都会得到一个新值。
例如
value = random number between 0.001 and 0.0015;
for i = 1:10,
for value,
Calculate something...
end
end
谁能告诉我该怎么做?
这一切都写在rand()
函数的文档中:http: //www.mathworks.com/help/matlab/ref/rand.html
示例 1 从区间 [a, b] 上的均匀分布生成值:
r = a + (b-a).*rand(100,1);
因此,在您的情况下a = 0.001
,b = 0.0015
您也可以更改rand(100,1)
为仅在区间上rand(10,1)
为您提供随机值。10
[a,b]
这很简单,您只需执行以下操作:
0.001+(rand()*(0.0015-0.001))
在我看来,您应该这样做:
myNumbers = rand(10,1)*0.0005+0.001;
for value = myNumbers;
%Calculate something
value
end
请注意,这里的主要改进是您可以一次预先计算所有随机值。
此外,您可以直接循环它们。