我需要创建两个数组。一个在5到20之间的24个随机数。第二个在1到10之间的24个随机数。我认为我在创建数组的正确轨道上工作,但无法坚持5或1的最小值。这是我的代码:
driver.find_element_by_xpath('//a[@class="expandable-trigger-more"]').click()
我如何添加第三个回路,该回路执行伏特乘以安培的方程式?每次迭代都会将每个数组产生的随机元素相乘
答案 0 :(得分:1)
要获得5到20之间的最小/最大随机数,
您将使用MDN docs中的Math.floor(Math.random() * (20 - 5 + 1)) + 5
:
// Returns a random integer between min (include) and max (include)
Math.floor(Math.random() * (max - min + 1)) + min;
然后您可以使用Array.from
平滑地创建数组 :
function randomBetween(min, max) {
return Math.floor(Math.random() * (max - min + 1)) + min;
}
let volts = Array.from({length: 24}, () => randomBetween(5, 20));
let amps = Array.from({length: 24}, () => randomBetween(1, 10));
console.log(volts, amps);
答案 1 :(得分:0)
解决方案:
function getRandomNumber(min, max) {
return Math.floor(Math.random() * (max - min + 1)) + min;
}
var volts = [];
var amps = [];
for(var i = 0; i < 24; i++) {
volts.push(getRandomNumber(5, 20);
}
for(var i = 0; i < 24; i++) {
amps.push(getRandomNumber(1, 10);
}
console.log(volts);
console.log(amps);
如果您想使用ES6,也可以尝试以下代码:
function getRandomNumber(min, max) {
return Math.floor(Math.random() * (max - min + 1)) + min;
}
const volts = Array.from({length: 24}, () => getRandomNumber(5, 20);
const amps = Array.from({length: 24}, () => getRandomNumber(1, 10);
console.log(volts);
console.log(amps);
更新[06/09/2018]
如果需要将这两个数组相乘,则可以创建第三个循环:
result = [];
for(var i = 0; i < 24; i++) {
result.push(amps[i] * volts[i]);
}
console.log(result)