2017-12-30 84 views
0

random()関数を使用してp5.jsを使って整数の乱数を得る方法を知りたいと思います。p5.jsのランダムな整数

var num = random(0, 1); 
console.log(num); 

これは私が持っているものですが、10進数のコンソールです。何か案が?

答えて

1

シンプルなJavaScriptを使ってみませんか?here

除くと最大値:制限など

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

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

を返すことはない15.意味を返すことはありません返します(ほぼ同じ。彼はp5関数をランダムに参照していますが、それはまったく同じです。 'Math.random(max * min)'を 'random(min、max)'に置き換えてください。 – SourceOverflow

2

あなたは0から10までの整数をしたい場合は、両方の包括:

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

説明:

ランダム(0、11)は麻痺を返す0〜10.999999999までですが...決して11

int()これらの10進数を整数に変換します。

int(random(0,11))は、0と10の両方を含む数を返します。

+0

これはP5.jsを使うときの正しいアプローチです。 +1、しかし、あなたがなぜこれがうまく動作するのかを正確に説明すれば素晴らしいでしょう。 –

+0

Kevin、 "random(a、b)"はaとbの間の数値を返しますが、bはないので、random(0,11)は0〜10.999999(ただし、決して11)で始まる数値を返します。 ()....... int(random(0,11))整数は0と10の両方を含む数を返します。 – Relajadito

0

p5.js random()関数は、常に浮動小数点数(別名10進数)を返します。整数が必要な場合は、JavaScript Math.round()を使用して、数値を最も近い整数に丸めます。

0または1を取得します。最善の方法は次のとおりです。

Math.round(random()); 

あなたはまた、JavaScriptが整数に数値を変換持っている)(int型を使用することができますが、それは単に数を切り捨てる効果で、小数点以下を無視大きな問題があります。
random()は最小からまでの乱数を返しますが、最大値はではないため、p5.js random()の問題です。 random(0, 1)の最大値は0.99999 ... int()は常に0に変換されます。

これは、例えば意味します

  • random()は常に1 Meading int(random())を返すことはありません0
  • random(0, 15)int(random(15))私はつもりポストだった15