• ベストアンサー

perlで確率計算

sample_の回答

  • ベストアンサー
  • sample_
  • ベストアンサー率76% (20/26)
回答No.1

そうですねぇ。 課題ですので、調べごとをしつつがんばってみましょう^^ 下記に考えの道筋の助けになると思うことを書いてみますね。 まずは、問題を分解して考えて一つずつクリアしていきましょう。 >1つのサイコロを振ったとき さいころが登場するので、乱数をつかって1~6の数字が 出るようにするにはどうしたらようでしょうか? 見方をかえると6個の数字を乱数で再現できればよいので… 0から・・・にひと手間加えるってことでよさそうですね。 >3以下の数字が出た場合,もう一度サイコロを振っても良いものとする. どうやら、最大2回さいころを触れるようですね。 for文を使うと1回目2回目とカウントできそうですね。 ただし、2回目に行くには3以下でないといけないので for文の中にif文で3以下かそうじゃないか調べる必要がありますね。 つまり、for文の中で最初に調べた乱数を用いたサイコロを 実行して値を出してそれを判別してあげればよいと思います。 3以下ならそのままで、4以上ならfor文を抜けることを考えましょう。 >合計が6になる確率 合計がと言っているので、さいころ(乱数を用いたさいころ)を振るたびに 数値を保存する変数が必要そうですね。上で話に出たfor文の中で乱数で 作ったサイコロを振るたびに足し算してあげるとよいですね。 for文を抜けたら6以上かそうじゃないかをif文で調べると 6以上になった時の回数をしることができます。 ここまで、できたら答えは目前ですね。 上記の内容で1回(3以下が出たらもう一回振ることも含めて)のサイクルができました。 知りたい内容は、確立なので1000回とか1万回繰り返した際に実際に 何回6以上になることがあるかを調べればプログラムを使ってもとめた ことになると思うので、上記プログラムをfor文の中に収めて 1000回とか1万回繰り返してみるとある値(確立)に収束すると思うので 最後に6以上になった回数/for文で繰り返した数 で確立が出ると思います。 大筋はこんな感じ。 for(){ ←1000回/1万回と回数を増やして試してみる。  for(){ ←3以下の時もう1回振れるようにしておく。   乱数をつかってさいころを再現。   サイコロの値を足し算する。   if(){    4以上ならfor文を抜ける   }  }  if(){   サイコロの合計が6以上なら1カウントする。  } } サイコロの合計が6以上の回数/for文の繰り返しの数で確立を求めプリントする。 いかがでしょうか?? がんばってみてください。

noname#115031
質問者

お礼

分かりやすい説明ありがとうございます!! こんなに早く回答が返ってくるとは思わなかったので嬉しいです(^^* 1つ1つ考えていけばよかったんですね。 なんとか完成できそうです。 本当にありがとうございました!!!

関連するQ&A

  • perl初心者です。

    perl初心者です。 最初にサイコロを1回振り,出た目の数だけ再度サイコロを振ることができるも のとする.このとき,1振り目を含めて合計が10 以上になる確率を求めるプログラムを作りたいのですが、2回目以降の数値の和の計算方法がわかりません。回答よろしくお願いします。

  • 確率の問題です。

    サイコロを15回振って、任意の数字が1回も出ない確率はどのように計算したらいいですか? 例えば、サイコロを15回振って、1が一度も出ない確率です。 よろしくお願いしますm(_ _)m

  • 数字が何回出て、その確率は何%なのか計算したい

    エクセルで以下のような条件で値を求めたいのですが、どうすれば可能でしょうか? 2個のサイコロを振って出た数字の合計(2〜12)のデータが100件あるとして、各数字が出た後に出現した数字と出現した回数、出現する確率を自動で求めたいのですが、やり方を教えて頂けないでしょうか? 例えば7が出た後に、2〜12の数字がそれぞれ何回出て、その確率はそれぞれ何パーセントなのか、データから抽出したいです。 宜しくお願いします。

  • 確率の計算方法について

    1~9の目があるサイコロを振って、 同じ数字がかぶること無く、8回連続で違う目が出る確率を求めたいのですが、 どのように計算したらよいでしょうか?

  • 確率の作り方。

    イベントで、大きいサイコロと小さいサイコロを2つ使って、2つの出た目の合計で景品を子供たちにプレゼントするという企画を考えています。 景品は、うまい棒です^^; そのうまい棒を、出た目の合計が「2」なら1本・・・・ 「3」「4」なら2本・・・ 「6」が出たら3本にしよう。 と考えています。 1本もらえる場合は「2」「■」「■」 2本もらえる場合は「3」「4」「■」「■」 3本もらえる場合は「6」「■」「■」「■」 ここで問題です。3つの景品が当たる確率が等しくなるようにするには、 サイコロの出目合計をどのようにしたらいいでしょうか。■に数字を埋めていきなさい。 この問題だけ、全くわかりません。 導き方を教えてくれませんか。

  • 確率についてです。ぜひ教えてください

    確率について教えてください 例えばサイコロを2つ同時に振り 各サイコロがその時に出た数字 (1-1・1-2・1-3・1-4・1-5・1-6・2-2・2-3・・・・・)を ひとつのパターンとし(出た目の合計とかではなく) 出た目の組み合わせが「21通り」あると思うのですが (・同時に振るので1-2と2-1や3-6と6-3などは同じとし ゾロ目含む) そのサイコロが もし ・1が出現する確率60% ・2が出現する確率50% ・3が出現する確率40% ・4が出現する確率30% ・5が出現する確率20% ・6が出現する確率10% とした場合 例えば「1-2の出る確率」などを算出するときは どのようにもとめれば良いのでしょうか? (この場合 もちろん単純に1の確率と2の確率の中間である55%では ないと思うのですが) 教えてください

  • 確率の計算

    当たる確率が1/3のAのサイコロと当たる確率が1/6のBのサイコロがあったとします。 Bのサイコロが外れたときにAのサイコロを振るとします。 5回連続でA,B共に外れる確率を求めるにはどのように計算したらよいでしょうか?

  • 4つのサイコロから2つを取り出した確率

    4つのサイコロを同時に振ります。 出た目から2つを選び、2つの目の合計が7の確率を求めよ。 という場合の確率計算が全然わかりません。どう計算するのでしょうか?

  • 確率の計算について

    こんにちは 確率の計算について質問がありましたので、投稿させていただきました。 「3個のさいころを同時に投げて、出る目の最大値が4である確率を求めよ」という問いで、 模範解答は、「3個の目がすべて4以下である場合から、3個の目がすべて3以下である場合を除けばよい」とありました。 この回答には納得がいったのですが、 僕は最初、以下のように考えていました 「出る目の最大が4であるということは、少なくとも1回は4がでてないといけない。 3回のうち、ひとつは4が出る確率、と、あとは4以下の目が出る確率を求めればいい。」 ところが、何回やっても、模範解答の解答が出てきません。 ということは、考え方に問題があるのがわかるのですが、 どこに矛盾があるのでしょうか? 回答いただけると嬉しいです。

  • サイコロを5つ振って、合計10が出る確率の計算方法を教えてください!

    サイコロを5つ振って、合計10が出る確率の計算方法を教えてください! ツリーを書いて地道に数える方法しかないでしょうか。。。。