1樓:小丁創業
matlab中rand函式的用途是:matlab rand函式能產[01]間隨機數,由種子遞推出來,而種子在程式初始時候都一樣。例如和時間相關的隨機數,如rand('state',sum(100*clock))。
rand函式不是真正的隨機數生成器,而srand()會設定供rand()使用的隨機數種子。如果在第一次呼叫rand()之前沒有呼叫srand(),那麼系統會為程式設計師自動呼叫srand()。
而使用同種子相同的數呼叫 rand()會導致相同的隨機數序列被生成。
2樓:懂點工程也要懂點生活
matlab中rand()函式用法:
一、理論準備
matlab函式randn:產生均值為0,方差 σ^2 = 1,標準差σ = 1的正態分佈的隨機數或矩陣的函式。
用法:y = randn(n),返回乙個n*n的隨機項的矩陣。如果n不是個數量,將返回錯誤資訊。
y = randn(m,n) 或 y = randn([m n]),返回乙個m*n的隨機項矩陣。
y = randn(m,n,p,...) 或 y = randn([m n p...]),產生隨機數組(感覺就是三維陣列,請看如下例子)。
1: >> rand(1,2,3)
2: ans(:,:,1) =
3: 0.445586200710899 0.646313010111265
4: ans(:,:,2) =
5: 0.709364830858073 0.754686681982361
6: ans(:,:,3) =
7: 0.276025076998578 0.679702676853675
y = randn(size(a)),返回乙個和a有同樣維數大小的隨機數組。
randn
s = randn('state'),估計和c++裡初始化隨機種子乙個意思,隨便了。
二、舉例分析
產生乙個隨機分布的指定均值和方差的矩陣:將randn產生的結果乘以標準差,然後加上期望均值即可。例如,產生均值為0.6,方差為0.1的乙個5*5的隨機數方式如下:
1: x = .6 + sqrt(0.1) * randn(5)
其他類似函式:rand, randperm, sprand, sprandn
三、拓展
用matlab隨機產生60個1到365之間的正數 1+fix(365*rand(1,60)),fix就是取整函式。
用rand函式隨機取100個從-1到2的數x1,x2,...,x = rand(1,100) * 2 - 1。
逗號表示行,分號表示列。
四、參考資料:
3樓:楊柳風
matlabrand函式能產[01]間隨機數,偽隨機數由種遞推種程式初始候都試著產間相關隨機數rand('state',sum(100*clock))
rand函式不是真正的隨機數生成器,而srand()會設定供rand()使用的隨機數種子。如果你在第一次呼叫rand()之前沒有呼叫srand(),那麼系統會為你自動呼叫srand()。而使用同種子相同的數呼叫 rand()會導致相同的隨機數序列被生成。
4樓:打怪練級
matlab中rand這個函式能產生[0,1]之間的隨機數,這個是偽隨機數,由種子遞推出來,而種子在程式初始時候都一樣。你可以試著產生和時間相關的隨機數,如rand('state',sum(100*clock))。
5樓:匿名使用者
產生區間(0.1)均勻分布的隨機數
c 中rand 函式的範圍,c 中rand 函式的範圍 10
rand函式範圍 在某些平臺下 例如 windows rand max 只有 32768。如果需要的範圍大於 32768,那麼指定 min 和 max 引數就可以生成大於 rand max 的數了,或者考慮用 mt rand 來替代它。rand函式不是真正的隨機數生成器,而srand 會設定供ran...
matlab中 rand和 randn的區別,請分別舉例
歷史小店 主要區別 1 rand 生成均勻分佈的偽隨機數。分佈在 0 1 之間主要語法 rand m,n 生成m行n列的均勻分佈的偽隨機數,rand m,n,double 生成指定精度的均勻分佈的偽隨機數,引數還可以是 single rand randstream,m,n 利用指定的randstre...
excel隨機函式rand怎麼用
步驟如下 1.選擇單元格,並輸入 rand 2.就可以看到單元格出現隨機數了。3.按f9可重新生產隨機數。隨機數字。1 生成隨機數比較簡單,rand 即可生成0 rand max之間的隨機數 define rand max 0x7fffu 2 如果要是整數,就用 int rand 10 表示0至9的...