我在Wikipedia上阅读了有关 RNG和TLDP$RANDOM
上的功能,但它并没有真正解释这个结果:
$ max=$((6*3600))
$ for f in {1..100000}; do echo $(($RANDOM%max/3600)); done | sort | uniq -c
21787 0
22114 1
21933 2
12157 3
10938 4
11071 5
为什么大约 2 倍以上的值比 3、4、5 更倾向于 0、1、2,但是当我更改最大模数时,它们几乎均匀分布在所有 10 个值上?
$ max=$((9*3600))
$ for f in {1..100000}; do echo $(($RANDOM%max/3600)); done | sort | uniq -c
11940 0
11199 1
10898 2
10945 3
11239 4
10928 5
10875 6
10759 7
11217 8