掲示板利用宣言

 次のフォームをすべてチェックしてからご利用ください。

 私は

 題名と投稿者名は具体的に書きます。
 課題の丸投げはしません。
 ソースの添付は「HTML変換ツール」で字下げします。
 返信の引用は最小限にします。
 環境(OSとコンパイラ)や症状は具体的に詳しく書きます。
 返信の付いた投稿は削除しません。
 マルチポスト(多重投稿)はしません。

掲示板2

管理者用メニュー    ツリーに戻る    携帯用URL    ホームページ    ログ    タグ一覧

No.26808

擬似乱数
投稿者---ミズミズ(2006/05/10 04:33:56)


ちょっと問題の意味がわからないので投稿させてもらいました。
つまりこれは乱数(0〜4)を生成した後どうしろと?

(問題)
擬似乱数を用いたおみくじ関数を作る。返す値は4.3.2.1.0です。(コレが大吉とかに該当)

ただし、それぞれの項目が現れる確率は順番に5.0 20.0 50.0 20.0 5.0とする。また、この関数を用いて2000回サンプリングをいたときのそれぞれの出現割合を出力せよ。

どうやって各乱数に出現割合を負荷すればいいんだろう?


この投稿にコメントする

削除パスワード

発言に関する情報 題名 投稿番号 投稿者名 投稿日時
<子記事> Re:擬似乱数 26809 ぽへぇ 2006/05/10 06:14:34
<子記事> Re:擬似乱数 26810 michi 2006/05/10 06:19:36


No.26809

Re:擬似乱数
投稿者---ぽへぇ(2006/05/10 06:14:34)


>つまりこれは乱数(0〜4)を生成した後どうしろと?

ちがいます。0〜4を条件にしたがって生成しろ、という問題です。

>どうやって各乱数に出現割合を負荷すればいいんだろう?
この問題程度でしたら

int rnd = RANDRAND();

if(rnd < FOO)
    return HOGE;
else if( (FOO <= rnd) && (rnd < BAR) )
    return FUGA;

応用や不足分はご自分でどうぞ。




この投稿にコメントする

削除パスワード

No.26810

Re:擬似乱数
投稿者---michi(2006/05/10 06:19:36)


>どうやって各乱数に出現割合を負荷すればいいんだろう?

rand()関数の戻り値をそのまま5で割るようなことはしてはだめでしょうね。
返された擬似乱数を5ではない[ある数]で割ってその余りから自由に出現割合を制御できますよ。[ある数]は自分で考えてください。

後、何度も擬似乱数を生成するみたいなので乱数の種の初期化にも気をつけてください。


この投稿にコメントする

削除パスワード

管理者用メニュー    ツリーに戻る    携帯用URL    ホームページ    ログ    タグ一覧