[英]Random Numbers In Range Not Random
I've been trying to generate random numbers between 1 and 10 million, but was finding that none of the numbers generated were lower than 1 million.我一直在尝试生成 1 到 1000 万之间的随机数,但发现生成的数字都不低于 100 万。 I wrote this code to test the problem.
我写了这段代码来测试这个问题。 This code selects ten million random numbers between 1 and ten million and outputs the lowest number.
此代码选择 1 到 1000 万之间的 1000 万个随机数并输出最小的数字。 I'd expect to get at least something in the 100-1000 range at least, but it;s always at least 1 million.
我希望至少得到 100-1000 范围内的东西,但它总是至少 100 万。 What have I missed?
我错过了什么?
JSFiddle: https://jsfiddle.net/vhLoqz8g/ JSFiddle: https://jsfiddle.net/vhLoqz8g/
var lowest=10000000; for (let i = 0; i < 10000000; i++) { var g=Math.floor(Math.random() * (10000000 - 1 + 1)) + 1; if (g<lowest) { lowest=g; } } document.write(g);
You should output lowest
and not g
at the end of your loop:你应该 output
lowest
而不是g
在你的循环结束时:
var lowest=1e8; for (let i = 0; i < 1e7; i++) { var g=Math.floor(Math.random()* 1e7) + 1; if (g<lowest) lowest=g; } console.log(lowest)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.