W3Cschool
恭喜您成為首批注冊用戶
獲得88經(jīng)驗(yàn)值獎(jiǎng)勵(lì)
第一步是生成大量的隨機(jī)數(shù)并存儲它們在一個(gè)向量中?!按罅俊蔽抑傅氖?0個(gè)。在開始應(yīng)該使用一個(gè)可控范圍的數(shù)值,這將有益于調(diào)試,之后在增加它的規(guī)模。
接下來的函數(shù)將會使用一個(gè)參數(shù),用來表示向量的長度。它用于申請分配一個(gè)新的向量用作存儲int型數(shù)據(jù),并且用0至upperBound-1之間的隨機(jī)數(shù)填充。
apvector randomVector (int n, int upperBound) { apvector vec (n); for (int i = 0; i,這意味著該函數(shù)返回一個(gè)整型數(shù)的向量。為了測試這個(gè)函數(shù),這里有一個(gè)十分方便的函數(shù)用作輸出向量中的內(nèi)容。
void printVector (const apvector<int>& vec) {
for (int i = 0; i<vec.length(); i++) {
cout << vec[i] << " ";
}
}
注意,這是一個(gè)apvector的合法語句參考。實(shí)際上它是十分常見的,因?yàn)樗槐貜?fù)制向量。因?yàn)閜rintVector不需要修改向量,我們聲明為const參數(shù)。
接下來的代碼是生成一個(gè)向量并輸出:
int numValues = 20;
int upperBound = 10;
apvector<int> vector = randomVector (numValues, upperBound);
printVector (vector);
在我的機(jī)器上輸出是:
3 6 7 5 3 5 6 2 9 1 2 7 0 9 3 6 0 6 2 6
這看起來是十足的隨機(jī)。你的輸出結(jié)果可能不同。
如果這些數(shù)字真的是隨機(jī)的,我們其他每一個(gè)數(shù)字出現(xiàn)都是同樣的次數(shù)——每個(gè)兩次。實(shí)際上,數(shù)字6出現(xiàn)了5次,4和8則未曾出現(xiàn)。
這是否意味著平均值不是很均勻?這很難說。只用幾個(gè)數(shù)值,得到我們所期望結(jié)果的是十分渺茫的。隨著數(shù)字的增多,輸出將會更接近我們預(yù)期的。
為了測試這個(gè)理論,我們寫一些程序用作統(tǒng)計(jì)每個(gè)數(shù)字出現(xiàn)的次數(shù),當(dāng)增加到numValues.之后再觀察發(fā)生了什么。
Copyright©2021 w3cschool編程獅|閩ICP備15016281號-3|閩公網(wǎng)安備35020302033924號
違法和不良信息舉報(bào)電話:173-0602-2364|舉報(bào)郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號
聯(lián)系方式:
更多建議: