|
6#
楼主 |
发表于 2017-12-19 05:34
|
只看该作者
答案BCDE, 2楼得奖。
DBMS_RANDOM 包提供了内置的随机数生成器。
DBMS_RANDOM.RANDOM 生成 [-2^^31, 2^^31) 之间的整数。
DBMS_RANDOM.VALUE 生成 [0,1) 之间的38位精度的数值。
DBMS_RANDOM 可以被明确初始化,但是在调用随机数生成器之前不需要被初始化。如果没有执行明确初始化,它会自动利用日期,用户ID和进程ID来进行初始化。
如果这个包被用两个相同的种子进行初始化,然后又以相同的方式访问,那么它在这两种情况下会产生相同的结果。在某些情况下,例如在测试的时候,你可能想要在每次运行时都生成相同的随机数系列。在这种情况下,你可以通过调用DBMS_RANDOM.SEED的一种过载方式,用一个常数值对生成器进行初始化。为了每次运行都生成不同输出,你只需忽略这个"Seed"的调用,系统就会为你选择一个合适的种子。
请注意,DBMS_RANDOM不适用于加密。
因为我在调用DBMS_RANDOM.VALUE时传递了1和5作为实际参数,这个函数永远会返回一个在1和5之间的数值。所以几何中的元素个数永远不会超过5。
我们不知道在循环终止的时候集合中会有多少个元素,虽然我们可以预测到c_iterations的值越大,那么1至5的所有索引值全部被填充,*5*被显示的可能性就越大,
|
|