質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

ただいまの
回答率

90.52%

  • Python

    7953questions

    Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

パチンコやパチスロの乱数生成

解決済

回答 1

投稿 編集

  • 評価
  • クリップ 1
  • VIEW 1,475

akipropro

score 8

前提・実現したいこと

パチンコを想定した乱数を生成したい。
自分で調べた限りは正規分布で考えるともあり、
具体的にどうプログラムするかで行き詰りました。
例として、当たり確率300分の1の乱数生成に、
どう具体的にプログラムすればいいかを教えてください。

発生している問題・エラーメッセージ

数学的な前提条件なしで、素人が考えたのは下の通りで、
出目0を除く1~8のゾロ目が出たら当たりとしました。
試行回数で見ても、さっくり当たってしまうので、間違いであると思いました。
重みは全て同じ確率として、0.125*8=1としました。

該当のソースコード

import random
import numpy as np

a = np.random.choice(9, 3, replace=True, p=[0, 0.125, 0.125, 0.125, 0.125, 0.125, 0.125, 0.125, 0.125])#重み付乱数生成

if np.array_equal(a,[7,7,7])#ゾロ目判定
以下略

試したこと

補足情報(言語/FW/ツール等のバージョンなど)

より詳細な情報

  • 気になる質問をクリップする

    クリップした質問は、後からいつでもマイページで確認できます。

    またクリップした質問に回答があった際、通知やメールを受け取ることができます。

    クリップを取り消します

  • 良い質問の評価を上げる

    以下のような質問は評価を上げましょう

    • 質問内容が明確
    • 自分も答えを知りたい
    • 質問者以外のユーザにも役立つ

    評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

    質問の評価を上げたことを取り消します

  • 評価を下げられる数の上限に達しました

    評価を下げることができません

    • 1日5回まで評価を下げられます
    • 1日に1ユーザに対して2回まで評価を下げられます

    質問の評価を下げる

    teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

    • プログラミングに関係のない質問
    • やってほしいことだけを記載した丸投げの質問
    • 問題・課題が含まれていない質問
    • 意図的に内容が抹消された質問
    • 広告と受け取られるような投稿

    評価が下がると、TOPページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

    質問の評価を下げたことを取り消します

    この機能は開放されていません

    評価を下げる条件を満たしてません

    評価を下げる理由を選択してください

    詳細な説明はこちら

    上記に当てはまらず、質問内容が明確になっていない質問には「情報の追加・修正依頼」機能からコメントをしてください。

    質問の評価を下げる機能の利用条件

    この機能を利用するためには、以下の事項を行う必要があります。

質問への追記・修正、ベストアンサー選択の依頼

  • raccy

    2017/01/21 19:06 編集

    パチンコでは無くスロット付きパチンコのスロット部分やパチスロ、というかスロットそのもの話なのではないですか?パチンコはただの玉転がしなのにゾロ目というのが意味がわからないです。

    キャンセル

回答 1

checkベストアンサー

0

パチンコを想定した乱数は全く違うアルゴリズムっぽいですよ。

パチンコの乱数とかスロットの乱数とか詳しい方教えてください・・・!Yahoo知恵袋

古い記事ですが、今もそう変わらないのではないかと。
乱数を発生させるのではなくて、ルーレットのようにアタリが決まっていて、それを引くかどうかといった判定のようです。

あとは当たった時に演出するだけなので、そもそも発想が違うと思います。

パチンコを想定するのか、パチンコぽいものを作りたいのかで、想定する乱数の発生方法が変わります。まず何をやりたいのか整理して、質問し直してみて下さい。

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2017/01/21 20:30 編集

    これが分かっただけでも前進です。
    ありがとうございました。
    さくっと作った結果は、当たり確率1/292に対し、繰り返し、1108,441,553,640,93,810,180,74回転で当たりという結果が得られました。
    結構ばらつくので、本当らしいです。

    キャンセル

  • 2017/01/22 02:47

    ルーレット方式で考えるなら、0-291の乱数に対して0をアタリとするとかで設定すればいいです。
    ちょっと何がやりたいのか分かりませんが、実際のアルゴリズムがわからない以上は、表面に出ている情報を元に単純化してしまって良いと思いますよ。

    キャンセル

15分調べてもわからないことは、teratailで質問しよう!

  • ただいまの回答率 90.52%
  • 質問をまとめることで、思考を整理して素早く解決
  • テンプレート機能で、簡単に質問をまとめられる

関連した質問

  • 解決済

    遺伝的アルゴリズムの交叉方法について

    遺伝的アルゴリズムの交叉方法について。 一点交叉、複数点交叉、一様交叉について調べているのですが、 一点交叉の「効率が悪い」というもの以外 いまいち特徴(使うにあたってのメリット)

  • 受付中

    ループ化の方法

    public class Gohkaku {     public static void main(String[] args){         int math = ne

  • 解決済

    Python 乱数の生成方法

    pythonの乱数の生成の方法がわかりません(調べてもよくわかりませんでした)。 具体的にやりたいことは以下のものです。 a = 0 乱数を生成して0~8のランダムな

  • 解決済

    00

    oooooooooooooooooooooooooooooooooooooooo

  • 解決済

    モンテカルロ法によるπの計算プログラム

    javascriptでモンテカルロ法によるπの値を計算するプログラムを組んでいます。 randomメソッドを使って写真のように計算しているのですが、nにどれだけ大きな値を入力して

  • 受付中

    pythonでランダムな11桁の整数を作るには

    pythonでランダムな11桁の整数を作るにはどうすれば良いのでしょうか?

  • 解決済

    1~nまでの乱数を重複しないようにリスト化したい

    前提・実現したいこと 1~nまでの整数乱数を重複しないようにリストに格納したいです。 よろしくお願いします。 発生している問題・エラーメッセージ ループ回数が安定せず、

  • 解決済

    境界外読み取りとはなんですか?

    下記に「Linux Kernel における境界外読み取りに関する脆弱性」とあるのですが、境界外読み取りの脆弱性とは何ですか? http://jvndb.jvn.jp/ja/co

同じタグがついた質問を見る

  • Python

    7953questions

    Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。