產生隨機數

2021-07-26 13:09:08 字數 942 閱讀 7442

一、normrnd

r = normrnd(mu,sigma)

r = normrnd(mu,sigma,m,n,...)

r = normrnd(mu,sigma,[m,n,...])

mu  sigma可以是向量或矩陣(二者同為矩陣時size要相同),但必須和r的size相同(行、列),r的size可以不指定,也可以用m,n指定

n1 = normrnd(1:6,1./(1:6))

n1 =

2.1650  2.3134  3.0250  4.0879  4.8607  6.2827

n2 = normrnd(0,1,[1 5])

n2 =

0.0591  1.7971  0.2641  0.8717  -1.4462

n3 = normrnd([1 2 3;4 5 6],0.1,2,3)

n3 =

0.9299  1.9361  2.9640

4.1246  5.0577  5.9864

for example:

1、生成後組裝

x=normrnd(mu1,sigma1,1,10);  %產生10個橫座標

y=normrnd(mu2,sigma2,1,10);  %產生10個縱座標

x=[x;y];    %x的中心座標為(mu1,mu2)

2、邊生成邊組裝

mu=[mu1;mu2];    %包括橫縱座標的均值

sigma=[sigma1;sigma2];   %包括橫縱座標的方差

x=;for i=1:10

x=[x,normrnd(mu,sigma)];    %產生資料同上

end

產生隨機數

先說明一下rand,這個函式用來產生偽隨機數。比如,產生1000的兩個隨機數,產生的兩個一般上是不同的,但如果要產生80個100以內的隨機數,僅用rand函式就不夠。因為產生80個100以內的隨機數,至少有兩個數相等的概率太大了 srand函式,並不能使產生的隨機數完全不同。你可以執行以下這串 in...

隨機數產生

c c 中取隨機數 在計算機中並沒有乙個真正的隨機數發生器,但是可以做到使產生的數字重複率很低,這樣看起來好象是真正的隨機數,實現這一功能的程式叫偽隨機數發生器。有關如何產生隨機數的理論有許多,如果要詳細地討論,需要厚厚的一本書的篇幅。不管用什麼方法實現隨機數發生器,都必須給它提供乙個名為 種子 的...

產生隨機數

srand 和rand 配合使用產生偽隨機數序列 srand函式是隨機數發生器的初始化函式。原型 void srand unsigned int seed rand函式在產生隨機數前,需要系統提供的生成偽隨機數序列的種子,rand根據這個種子的值產生一系列隨機數。如果系統提供的種子沒有變化,每次呼叫...