[1,4] の範囲のランダムな整数の配列を生成する Java コードを作成したいと考えています。配列の長さは N で、実行時に提供されます。問題は、範囲 [1,4] が均一に分布していないことです。
これは、N=100 の配列を作成すると、配列内で数値「1」が平均 40 回、数値「2」が 10 回、というように表示されることを意味します。
今のところ、このコードを使用して範囲 [1,4] の一様分布乱数を生成しています。
public static void main(String[] args)
{
int N;
System.out.println();
System.out.print("Enter an integer number: ");
N = input.nextInt();
int[] a = new int[N];
Random generator = new Random();
for(int i = 0; i < a.length; i++)
{
a[i] = generator.nextInt(4)+1;
}
}
上のグラフに示すように、不均一な分布で実装するにはどうすればよいですか?