指数分布(λ = 2) に従う乱数を生成するプログラムをかけ。
上記のプログラムを使って、指数分布に従う乱数を20,000 回程度発生させる(多い方がよい)。発生した乱数を区間[0, 0.1)[0.1, 0.2), . . . , [9.9, 10.0), [10,+∞) ごとに分類し、その個数を数え上げ、発生確率のグラフ(ヒストグラム)を書きなさい。X 軸は、乱数の区間をY 軸は対応した区間の乱数生成数とすること。なお、[10,+∞) は10 以上を表します。
ヒストグラムの表記で各区間ごとに例えば
[0, 0.1) **********
の様にしたいのですが、やり方がいまいちわかりません。教えていただきたいです。
import java.util.Random; public class Index{ public static void main(String[] args) throws Exception{ Random ran=new Random(); int num=30000; int[] count=new int[100]; int tenOrMore=0; double tau; double lambda=2; int x; for(int i=0;i<num;i++){ tau=-Math.log(1-Math.random())/lambda; x=(int)(tau* 10); if(x>=100){ tenOrMore++; }else{ count[x]++; } } for(int j=0;j<count[j];j++){ System.out.print("*"); } System.out.println(); } }
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/06/27 14:48 編集
2020/06/27 14:50
2020/06/27 15:44