C++ 檢查其他值

2023-03-20 16:02 更新

函數(shù)“howMany”只是統(tǒng)計了某個特殊的數(shù)值的出現(xiàn)次數(shù),有時候我們需要統(tǒng)計每個數(shù)值出現(xiàn)的次數(shù)??梢杂孟旅孢@個循環(huán)函數(shù)完成這項工作。

int numValues = 20;
int upperBound = 10;
apvector<int> vector = randomVector (numValues, upperBound);

cout << "value\thowMany";

for (int i = 0; i<upperBound; i++) {
    cout << i << ’\t’ << howMany (vector, i) << endl;
}

注意這一點,在for語句中是可以定義變量的。這種語法設(shè)計有時候是很方便的,但是在循環(huán)語句中定義的變量只能在循環(huán)體中使用,這點要記住。比如,跳出循環(huán)后,變量i就不能再使用了。如果你嘗試在循環(huán)體外面引用i,你將會得到一個編譯錯誤。

這段代碼使用了一個循環(huán)變量作為howMany函數(shù)的參數(shù),以此按順序統(tǒng)計每個數(shù)值的出現(xiàn)次數(shù)。程序運行的結(jié)果為:

Value     howMany
  0         2
  1         1
  2         3
  3         3
  4         0
  5         2
  6         5
  7         2
  8         0
  9         2

現(xiàn)在看來,我們還是不能說明隨機數(shù)產(chǎn)生的幾率是一樣的。如果我們把數(shù)值出現(xiàn)的上限調(diào)到100000,將得到如下結(jié)果:

Value     howMany
0         10130
1         10072
2         9990
3         9842
4         10174
5         9930
6         10059
7         9954

對于每個數(shù)說,它們出現(xiàn)的次數(shù)誤差在估計值的1%以內(nèi),由此我們可以認為隨機數(shù)是均勻分布的。

以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號