////////////////////////////////////////////////////////////////////////////////
//  << j183a.java >>
//
//  基礎(8):区間[0,1]の一様乱数の分布
//
////////////////////////////////////////////////////////////////////////////////

class j183a {
  public static void main(String args[]) {

    int n = 100000; // 乱数の個数。
    double r; // 区間[0,1]の一様乱数。
    int f[] = new int[10]; // 出現頻度。

    // 出現頻度の初期化。
    for( int i=0; i<10; i++ ) { f[i] = 0; }

    // 一様乱数を作成し出現頻度を数える。
    for( int j=1; j<=n; j++ ) { 
      r = Math.random();
      int k = (int)(r * 10);
      f[k] = f[k] + 1;
    }

    // 出現頻度の表示。
    System.out.println("乱数の個数:" + n);
    for( int m=0; m<10; m++ ) {
      System.out.print("[" + m/10.0 + "-" + (m+1)/10.0 + "] ");
      System.out.print(f[m]);
      System.out.println("(" + 100.0*f[m]/n + "%)");
    }
  }
}
実行結果
% javac j183a.java

% java j183a
乱数の個数:100000
[0.0-0.1] 9962(9.962%)
[0.1-0.2] 9994(9.994%)
[0.2-0.3] 9845(9.845%)
[0.3-0.4] 10194(10.194%)
[0.4-0.5] 9939(9.939%)
[0.5-0.6] 9970(9.97%)
[0.6-0.7] 10020(10.02%)
[0.7-0.8] 10050(10.05%)
[0.8-0.9] 10107(10.107%)
[0.9-1.0] 9919(9.919%)