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 |