• 締切済み

プログラミングのプログラムの作成を教えてください!!

「1 から6 の数を乱数で発生させ,サイコロを試行する.この試行を100 回まで繰り返して出た数を配列 変数に記録してゆき,試行全体の平均値,度数の分布,ヒストグラムを表示せよ.」と言う課題が出されたんでけどわかりますでしょうか?さいごはコマンドプロントで実行するんですが… ぜひ教えてください。どうかお願いします。

みんなの回答

  • tachiwa
  • ベストアンサー率34% (25/73)
回答No.4

少し、変わった表示法です。 public class RandomDouble01{ public static void main(String []args){ int i = 0; int[] intArray = new int[100]; double[] doubleArray = new double[100]; while(i < 100){ double x = Math.random(); doubleArray[i] = x * 6; intArray[i] =(int)(x * 6) + 1; i++; } StringBuffer[] sb = new StringBuffer[6]; for(int j = 0; j < sb.length; j++){ sb[j] = new StringBuffer(); } for(int k = 0; k < intArray.length; k++){ switch (intArray[k]){ case 1 : sb[0].append("*"); break; case 2 : sb[1].append("*"); break; case 3 : sb[2].append("*"); break; case 4 : sb[3].append("*"); break; case 5 : sb[4].append("*"); break; case 6 : sb[5].append("*"); break; default : break; } } for(int m = 0; m < 6; m++){ System.out.println(":" + ( m+1) + ":" + sb[m].toString()); } } }

  • galluda
  • ベストアンサー率35% (440/1242)
回答No.3

がると申します。 プログラムはまず「コメントを書いて」から作ってみるとよろしいかと。 あとは関数をあちこちに。 以下、勉強する上で便利であろうヒントを。 > 1 から6 の数を乱数で発生させ,サイコロを試行する. 関数ないしクラスで、この実装をかけましょう。 int dice() { return 1~6の乱数; } > この試行を100 回まで繰り返して出た数を配列変数に記録してゆき, 100回の試行は制御構造で。for文が一番らくでしょう。 配列は、お好みで。vectorとかのコンテナークラス使うと、今後のためになります。 > 試行全体の平均値,度数の分布,ヒストグラムを表示せよ. これは、上述の「配列のデータ」をもやもやさせればOKですよね? 以上、何かの参考にでもなれば幸いです。

inafu172
質問者

お礼

ありがとうございます。 とても参考になり、課題の方がうまくいけました。 これからもどうぞよろしくお願いいたします。

  • fortranxp
  • ベストアンサー率26% (181/684)
回答No.2

平均値はご自分でお考えください。 public class HistGramB { public static void main(String[] args){ int[] n=new int[6]; int[] rN=new int[100]; for(int i=0;i<100;i++){ rN[i] = (int)(Math.random() * 6 + 1); } for(int k=0;k<rN.length;k++){ for(int i=0;i<6;i++){ if(rN[k]==i+1){ n[i]=n[i]+1; } } } System.out.println("=====ヒストグラム====="); System.out.println(" 1 5 10 15 20"); System.out.println(" + + + + +"); for(int j=0;j<6;j++){ System.out.print((j+1) + "|"); for(int i=0;i<n[j];i++){ System.out.print("*"); } System.out.println(); } } }

inafu172
質問者

お礼

ありがとうございます。 とても参考になり、実行結果もエラーが出ずうまくいけました。 これからもどうぞよろしくお願いいたします。

noname#18558
noname#18558
回答No.1

これ?

参考URL:
http://infoshako.sk.tsukuba.ac.jp/~shakoj33/kadai/Kadai2.html
inafu172
質問者

お礼

ありがとうございます。 とても参考になり、課題の方がうまくいけました。 これからもどうぞよろしくお願いいたします。

関連するQ&A