💎一站式轻松地调用各大LLM模型接口,支持GPT4、智谱、星火、月之暗面及文生图 广告
函数“howMany”只是统计了某个特殊的数值的出现次数,有时候我们需要统计每个数值出现的次数。可以用下面这个循环函数完成这项工作。 ~~~ 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语句中是可以定义变量的。这种语法设计有时候是很方便的,但是在循环语句中定义的变量只能在循环体中使用,这点要记住。比如,跳出循环后,变量i就不能再使用了。如果你尝试在循环体外面引用i,你将会得到一个编译错误。 这段代码使用了一个循环变量作为howMany函数的参数,以此按顺序统计每个数值的出现次数。程序运行的结果为: ~~~ Value howMany 0 2 1 1 2 3 3 3 4 0 5 2 6 5 7 2 8 0 9 2 ~~~ 现在看来,我们还是不能说明随机数产生的几率是一样的。如果我们把数值出现的上限调到100000,将得到如下结果: ~~~ Value howMany 0 10130 1 10072 2 9990 3 9842 4 10174 5 9930 6 10059 7 9954 ~~~ 对于每个数说,它们出现的次数误差在估计值的1%以内,由此我们可以认为随机数是均匀分布的。