配列処理-発展4
Categories:
問題
条件分岐とループを使用した複雑な処理を実装してください:
- グローバル変数として:
int c = 10でカテゴリ数を定義してくださいint[]型の配列cardをサイズ c で初期化してくださいint型の変数complete = 0,count = 0,getを宣言してください
while (complete == 0)ループ内で:- ランダムな値を取得 で 0~9 のランダムな値を取得してください
- 配列の対応する要素をインクリメント(
card[get] += 1)してください count++で試行回数をカウントアップしてくださいcomplete = 1と初期化してください- 内側の
forループで配列の全要素をチェックし、0 の要素があればcomplete = 0に戻してください - すべての要素が 1 以上になれば、ループが終了します
- ループ終了後、以下を console に出力してください:
- 「分布は以下の通り」と出力
- 各カテゴリについて「カードn は x です」と出力
- 合計試行回数について「x枚で完了」と出力してください
ヒントを見る
random(最小値, 最大値): 指定範囲のランダムな値を取得
- このアルゴリズムはクーポン問題(コレクター問題)の実装です
- すべてのカテゴリが少なくとも1回以上出現するまで試行を繰り返します
- ネストされた
whileとforで複雑な制御フローを実装できます