今回は、WeChat 赤い封筒のランダム アルゴリズムの JS 実装 (コード付き) を紹介します。WeChat の赤い封筒のランダム アルゴリズムを実装するための JS の 注意事項は何ですか。実際のケースを見てみましょう。 100 元の赤い封筒があり、10 人に送る必要があるとします。公平性を確保するために、アルゴリズムは次の原則を保証する必要があります:
ステップ 1: 0 ~ 100 の数字をランダムに選択して、最初の赤い封筒の金額を取得します。
ステップ 2: 0 から残額までの数字をランダムに選択して、2 番目の赤い封筒の金額を取得します。
第 3 ステップ:...
最後のステップは、残りのお金を最後の人に渡すことです。
など、赤い封筒を10枚すべて入手してください。しかし、これが明らかに不公平であることにあなたが気づいたかどうかはわかりません。先に掴んだ人が有利で、最初の人のランダム範囲は 0 ~ 100 で、より多くの金額を獲得できる可能性があります。最後の人のランダム範囲は非常に小さくなります。最初の人が 90 元を獲得した場合、最後の人は 10 元を超える可能性はありません。このプロセスをコードでシミュレートしてみましょう:
テスト結果は次のとおりです:
注意深い人は、残高の値が間違っていることに気づくでしょう。これは
JavaScript浮動小数点数演算の既知の問題です。 。もちろん、それを解決する方法はたくさんあります。良い解決策があれば、メッセージを残してください。 この記事の事例を読んだ後は、この方法を習得したと思います。さらに興味深い情報については、php 中国語 Web サイトの他の関連記事に注目してください。
推奨読書:
vue は dom 内のクラスの使用法を決定します コンパイル後に Vue プロジェクトを処理し、Web サイト以外のルート ディレクトリにデプロイする方法の詳細な説明以上がJS は WeChat 赤封筒ランダム アルゴリズムを実装します (コード付き)の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。