| MATLAB Function Reference | ![]() |
Syntax
Y = rand(n)
Y = rand(m,n)
Y = rand([m n])
Y = rand(m,n,p,...)
Y = rand([m n p...])
Y = rand(size(A))
rand
s = rand('state')
Description
rand 這個函式會產生一個陣列,其元素為均勻分布在 (0,1) 區間的亂數。
Y = rand(n) 傳回結果為
n-by-n 的矩陣。若 n 不是純量,則會出現錯誤訊息。
Y = rand(m,n) or Y = rand([m
n]) 傳回結果為
m-by-n 的矩陣。
Y = rand(m,n,p,...) or Y =
rand([m n p...]) 傳回指定維度的陣列。
Y = rand(size(A)) 傳回一個大小與 A 相同的矩陣。
rand 函式本身會傳回一個純量值,而這個值會隨著每次參考的時間不同而改變。
s = rand('state') 傳回一個具有35個元素的向量,其包含了所產生的狀態。若要改變這些狀態 :
rand('state',s) |
重設狀態為 s。 |
rand('state',0) |
重設為初始的狀態。 |
rand('state',j) |
對於整數 j,重設狀態為它的第 j 個狀態。 |
rand('state',sum(100*clock)) |
每個時間都重設一次它的狀態。 |
Examples
R =
0.2190 0.6793 0.5194 0.0535
0.0470 0.9347 0.8310 0.5297
0.6789 0.3835 0.0346 0.6711
if rand < .5
'heads'
else
'tails'
end
Example 2. 產生均勻分布在 [a,b] 特定區間的亂數。做法是先將 rand 的結果乘以 (b-a) ,然後再加上 a。
以下的例子,即是一個亂數產生 5-by-5 ,在 [10,50] 區間,均勻分布的陣列。
a = 10; b = 50; x = a + (b-a) * rand(5) x = 18.1106 10.6110 26.7460 43.5247 30.1125 17.9489 39.8714 43.8489 10.7856 38.3789 34.1517 27.8039 31.0061 37.2511 27.1557 20.8875 47.2726 18.1059 25.1792 22.1847 17.9526 28.6398 36.8855 43.2718 17.5861
See Also
randn, randperm, sprand, sprandn
|
qz | randn | ![]() |