Javascript 在p5.js中生成一个随机整数

Javascript 在p5.js中生成一个随机整数,javascript,html,p5.js,Javascript,Html,P5.js,如何使用p5.js中的random()函数获取随机整数 例如,此代码: var num = random(0, 1); console.log(num); 将十进制数字输出到控制台 如何获得随机整数?为什么不使用演示的简单JavaScript 不包括最大值: function getRndInteger(min, max) { return Math.floor(random(min, max)) + min; } 包括限制: function getRndInteger(min,

如何使用p5.js中的
random()
函数获取随机整数

例如,此代码:

var num = random(0, 1);
console.log(num);
将十进制数字输出到控制台


如何获得随机整数?

为什么不使用演示的简单JavaScript

不包括最大值:

function getRndInteger(min, max) {
    return Math.floor(random(min, max)) + min;
}
包括限制:

function getRndInteger(min, max) {
    return Math.floor(random(min + 1, max)) + min;
}

如果需要0到10之间的整数,包括:

var num = int(random(0, 11));
console.log(num);
说明:

random(0,11)返回0到10之间的数字。999999999。。。但永远不要11

int()将这些十进制数转换为整数

int(random(0,11))返回介于0和10之间的数字,两者都包括在内。

p5.js
random()
函数将始终返回浮点数(也称为十进制数)。如果需要整数,可以使用JavaScript
Math.round()
将数字四舍五入到最接近的整数

得到零或一。最好的方法是:

Math.round(random());
您也可以使用int()让JavaScript将数字转换为整数,但它存在一个主要问题,即忽略小数,实际上是将数字向下舍入。
这是p5.js
random()
的问题,因为
random()
将返回一个从最小值到的随机数,但不包括最大值。
随机(0,1)
的最大值为0.99999。。。其中
int()
始终转换为0

这意味着,例如:

  • random()
    将永远不会返回1。Meading
    int(random())
    始终返回0
  • random(0,15)
    永远不会返回15。意思是
    int(random(15))
    永远不会返回15

    • 所以,我要做的是,给一个变量分配一个随机数

      例如


      -瓦尔基里

      我本来打算(几乎)发同样的帖子。他指的是p5随机函数,但应该是一样的。只需将
      Math.random()*(max-min)
      替换为
      random(min,max)
      这是使用P5.js时的正确方法+1,但如果你能准确地解释为什么会这样,那就太棒了。Kevin,“random(a,b)”会给你介于a和几乎b之间的数字,但从来没有b,所以random(0,11)会返回从0到10.999999(但从来没有11)的数字,然后将数字转换为int()。。。。。所以int(random(0,11))将返回0到10之间的整数,两者都包含在内。欢迎使用stackoverflow。地板不圆,即使它做了我们想要的。函数的作用是:返回小于或等于给定数字的最大整数。还可以注意到,要使用p5.js随机方法,我们还需要函数setup(){},定义为p5.js的方法在安装内部或之后才可用。。我们也可以使用p5.js floor而不是Math.floor来让它看起来更好一点。谢谢!哦,好吧,哈哈。。。在谈论我不太熟悉的事情时,我必须更加小心。:-)谢谢
      var r = Math.floor(random(0,11));
      console.log(r);