在MATLAB中生成一定范围内的随机数
我怎样才能产生一个13和20之间的MATLAB随机数?
如果你正在寻找均匀分布的伪随机整数,使用:
randi([13, 20])
http://www.mathworks.com/help/techdoc/ref/rand.html
n = 13 + (rand(1) * 7);
r = 13 + 7.*rand(100,1);
其中100,1是所需vector的大小
ocw.mit.edu是帮助我的一个很好的资源。 兰迪是最好的select,但如果你的数字乐趣尝试使用兰特的地板function来得到你想要的。
我画了一个数字线,并提出了
floor(rand*8) + 13
你也可以使用:
round(mod(rand.*max,max-1))+min
从区间[a,b]的均匀分布生成值。
r = a + (ba).*rand(100,1);
如果你想随机产生一个特定的数字,那么你可以尝试`r = randi([ab],1,d)
a =开始点b =结束点d =您想要生成多less个数字,但请记住d应小于或等于ba
如果你需要一个浮动的随机数在13和20之间
(20-13).*rand(1) + 13
如果你需要一个13到20之间的整数随机数
floor((20-13).*rand(1) + 13)