Math.random()の説明

スイス:

これはかなり単純なJava(おそらくすべてのプログラミングに当てはまります)の質問です:

Math.random() 0と1の間の数を返します。

0から100までの整数を返したい場合は、次のようにします。

(int) Math.floor(Math.random() * 101)

1から100の間で、私はそうします:

(int) Math.ceil(Math.random() * 100)

しかし、3〜5の数値を取得したい場合はどうなりますか?次のようになりますか?

(int) Math.random() * 5 + 3

について知ってnextInt()java.lang.util.Randomます。しかし、私はこれをどのように行うかを学びたいですMath.random()

AusCBloke:
int randomWithRange(int min, int max)
{
   int range = (max - min) + 1;     
   return (int)(Math.random() * range) + min;
}

randomWithRange(2, 5)10回の出力

5
2
3
3
2
4
4
4
5
4

境界は包括的、つまり[2,5]であり、上記の例minよりも小さくなければなりませんmax

編集:誰かが試してみて、愚かなことと逆にするつもりだった場合minmax、あなたがにコードを変更することができます:

int randomWithRange(int min, int max)
{
   int range = Math.abs(max - min) + 1;     
   return (int)(Math.random() * range) + (min <= max ? min : max);
}

EDIT2:double s について質問は、次のとおりです。

double randomWithRange(double min, double max)
{
   double range = (max - min);     
   return (Math.random() * range) + min;
}

繰り返しますが、ばかばかしくない場合は次のようにします。

double randomWithRange(double min, double max)
{
   double range = Math.abs(max - min);     
   return (Math.random() * range) + (min <= max ? min : max);
}

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

この種の命令の説明は何ですか?{max} = Math;

分類Dev

誰かが私に一緒に使用されるMath.random()と幅/高さを説明できますか?

分類Dev

次のJavaScript構文を説明します。varfib= require( 'algorithms.js')。Math.fibonacci;

分類Dev

Java Math.random()の懸念

分類Dev

Math.random()とRandom.nextInt(int)の比較

分類Dev

停止 rnd = Math.floor(Math.random() * 3) + 1;

分類Dev

Luaのmath.random()とmath.randomseed()の違い

分類Dev

Math.random()*50 + Math.random()*20 の分布は、Math.random()*70 とどのように比較されますか?

分類Dev

ExpoでのMath.random()の構成

分類Dev

Javascript-forループ内のMath.random

分類Dev

Math.random固有の値coronasdk

分類Dev

if(math.random == 50)の使い方は?

分類Dev

JodaTimeのMath.max(...)

分類Dev

else if math / bigの条件

分類Dev

Math.NetのTriangularSolver

分類Dev

inputValのMath.pow()

分類Dev

整数のMath.Floor

分類Dev

bigIntのMath.exp()?

分類Dev

Math.round() の代替

分類Dev

Math.sin内のMath.radians

分類Dev

Java Math.random期間

分類Dev

Math.random範囲が負

分類Dev

Proxypac - Loadbalancing with "if(Math.random() < 0.5)"

分類Dev

Math.random シナリオ

分類Dev

Math.random()=== Math.random()は可能ですか?

分類Dev

ExpressionChangedAfterItHasBeenCheckedErrorの説明

分類Dev

ApacheZooKeeperの説明

分類Dev

JavaServiceLoaderの説明

分類Dev

JavaServiceLoaderの説明