我正在尝试计算两个随机长整数之和。但是,它似乎什么也没产生。
这是我的代码:
var input1 = prompt("One random number (must be whole and one digit)");
var input2 = prompt("Another random number");
var num1 = Math.random(parseInt(input1)) * 100000000000000000000000000000000000000000000000000;
var num2 = Math.random(parseInt(input2)) * 100000000000000000000000000000000000000000000000000;
while (num1 > 10) {
num1 /= Math.random(10);
}
num1 * 100000000000000000000000000000000000000000000000000;
while (num2 > 10) {
num2 /= Math.random(10);
}
num2 * 100000000000000000000000000000000000000000000000000;
var sum = num1 + num2;
document.write(sum);
它应该显示非常大的随机数,但似乎什么也没有显示。为什么是这样?我的代码有问题吗?还是我的设备运行缓慢,这意味着我在完成之前就放弃了?
答案 0 :(得分:4)
Math.random
不带任何参数,并且始终返回0到1之间的数字,因此现在num1 /= Math.random(10);
实际上为每次迭代增加num1。 num2也是如此。因此,两个循环永远都不会结束。
如果要返回1到10之间的随机数,则应使用Math.random() * 9 + 1
。