- ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:C言語でこのプログラムを完成させるには)
C言語で乱数のヒストグラムを表示するプログラムの作成方法
このQ&Aのポイント
- C言語初心者のため、C言語で乱数のヒストグラムを表示するプログラムを作成したいが、うまくいかない。
- プログラムでは、1から6までの乱数を100回発生させて、各乱数の出現回数をカウントする。
- プログラムの問題点が分からないため、改善方法を教えてほしい。
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
まずここ。whileの継続条件が常に真なので無限ループになりますね。 r=6; while (6-- > 0) putchar('*'); 正しくは、 r=6; while (r-- > 0) putchar('*'); でしょうけど、何をしたいのかわかりません。1行にアスタリスクが6個ずつ、100行並ぶだけです。 意図としては、ここでrnd関数を呼んで乱数値を取得、区間で分類してhist[]の値を加算していくことになるかと思います。 もう一点気になるのが、hist[0]を無視していることです。 配列の仕様を確認してみてください。
その他の回答 (3)
- 91rrq6jvwj
- ベストアンサー率0% (0/1)
回答No.4
私もC言語初心者です。下の説明文がやくにたちますか。
- 参考URL:
- http://gh33-it.blogspot.com/
- 和泉 博(@hiroshi09s)
- ベストアンサー率54% (59/109)
回答No.3
for (i=0; i<100; i++) { r=6; while (6-- > 0) putchar('*'); putchar('\n'); } だけど、 for (i=0; i<100; i++) { printf(" %d", rand()); //hist[rand()%6+1] +=1; } putchar('\n'); どうやれば、hist[] に入れることができるかを考えてみると良いんじゃないかな。 http://www2.ocn.ne.jp/~mochi/menu/c/c14.html
質問者
お礼
回答有難うございます。
- Tacosan
- ベストアンサー率23% (3656/15482)
回答No.1
「上手くいかない」とは, 何がどう「上手くいかない」のですか?
お礼
回答有難うございます。