問題タブ [srand]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
2 に答える
209 参照

c++ - めちゃくちゃな srand() と vector::iterator

戦闘員の数、ラウンド数、ラウンドごとのファイターごとのサイコロの数を選択して、結果を 3D ベクトル配列に格納できる「バトル」の練習コードを作成しました。ストレージ部分は機能しています。ただし、 printResult() 関数は失敗し ( main() の前に // を置きました)、 srand() も機能しません。便宜上、完全なプログラムを以下に示します。

0 投票する
4 に答える
977 参照

c++ - rand() %4000000000UL 小さい値のみを与える

次のコードについて質問があります。

codepad.org では、次のような大きな値を出力します

しかし、Windows 7 64 ビットでは、小さな値しか出力されません (VS11 および Code::Blocks でコンパイルしてテスト済み)。

C++ 学習者を助けてくれてありがとう;)

0 投票する
2 に答える
5811 参照

c - シード付きの乱数ジェネレーター

srand(time(NULL))を使って乱数を生成しています。なぜそれが常に乱数さえも与えるのか、何か考えはありますか?私の場合、そのようにしています。私も奇数が必要なのを手伝ってください。0、1のセットが必要です。例:{1,1,0,0,1,0,0,0,1,1,0}

0 投票する
5 に答える
4488 参照

c++ - Rand_Max*(max-min)+min << あれは何?

問題: RAND_MAX*(最大-最小)+最小);

わかりましたので、アルゴリズム、ラムダ式、およびこのことのキャプチャ句を知っています。私の質問は、そのすべてにとって非常にばかげています。上記の太字のテキストは何を意味していますか。つまり、ランダム値生成プロセスの一部を知っています。しかし、一体何が起こっているのか正確にはわかりません。誰かがそのちっぽけな小さなコードを分解できますか。

0 投票する
4 に答える
1349 参照

c++ - 複数のランダムモジュールで使用するランダムシードをどこで初期化しますか?

そのため、最終的な機能を構築するために複数のモジュールを組み合わせて何か大きなものを開発するたびに、同じ質問を疑問に思っていました:複数のモジュールがランダム関数を使用する必要がある場合、ランダムシードをどこで初期化するのですか?

ランダムが必要な特定のクラスがある場合 (たとえば、入力配列を自己実装のクイックソートでソートして初期化するクラスの場合、ピボットの選択にはランダムが必要になります)、通常はプライベートstatic bool isRandOn;変数があるため、ランダムピボットの選択、私はその変数をチェックしsrand(time(NULL));、ランダムがまだオンになっていない場合に行います.

名前空間に大量のユーティリティ関数がある場合、非常に似たようなことを行います。そのような変数を utils ライブラリ内の無名名前空間に置き、クラスとほぼ同じことを行います。

私が抱えている問題は、これらのモジュールを組み合わせるときです。それだけで、各モジュールがシードを複数回設定しないことを私は知っています。しかし、さまざまな量のモジュールを一緒に使用できるようにしたい、他の人が他のモジュールとは独立して 1 つまたは複数のモジュールを使用できるようにしたい...

では、複数のランダムシードが必要なモジュールを処理する最良の方法は何ですか? 各モジュールにシードを設定しますか? シードをまったく設定しないで、代わりにランダムの使用法を文書化し、ユーザーがモジュールを使用したい場合にシードを初期化するようにしますか? 第三の何か?

0 投票する
2 に答える
812 参照

c++ - srand が原因でプログラムがフリーズする

C++ で RSA アルゴリズムを実装しました。プログラムは動作していますが、srand 呼び出しによってプログラムが遅くなります。2 つの素数と暗号化キー (e) を生成するために srand を使用しました。これがスニペットです

srand のシードを変更することで、どうにかしてプロセスをスピードアップできますか?

0 投票する
4 に答える
4313 参照

c - rand() 関数を使用してランダムな RGB カラーを生成する

SVG の RGB パターンとして使用できるように、3 つの数値を生成する関数が必要です。
これは単純ですが、同じ色を 2 回使用していないことも確認する必要があります。どうすれば正確にそれを行うことができますか?シンプルrand(シード タイム アクティブ) で一度に 1 つの数値を生成し、次に何をしますか? 数字を除外したくないのですが、パターン全体でしょうか?
私はここでちょっと迷っています。

正確には、この関数を最初に呼び出すと、たとえば 218 199 154 が得られ、2 番目に 47 212 236 が得られます。これは間違いなく 2 つの異なる色です。助言がありますか?

structまた、これにはwithint r, int g, int bが適していると思いますか?

編集:色は人間の目とは異なるはずです。これについて先に言及せずに申し訳ありません。

0 投票する
4 に答える
738 参照

c - 整数のクイックソート、rand()のセグメンテーション違反

整数のクイックソートアルゴリズムを書いていますが、srand関数で奇妙なセグメンテーション違反エラーが発生します。これがsort.hのコードです。

そして、これがsort-test.cからの呼び出しです。

temp整数へのポインタはどこにありますか。

そして、gdbで実行したときに発生するエラーは次のとおりです。

手伝ってくれませんか?

どうもありがとうございます。

編集:これはswapInt関数です:

0 投票する
3 に答える
1420 参照

c++ - C++ srand、DLL での rand の奇妙な動作

私はAIコンテストのホストをやっていて、ランダムな可能な値を選択するrandomBotを持っています。

ボットには、Init(_seed) と MakeMove() の 2 つのエクスポート関数があります。

まったく同じゲームをプレイするには、ホストが各ボットに対して定義されたシード値を持っています。Init 関数でそれを渡します。

random bot の Init 関数には srand(_seed) 関数呼び出しがあります。ランダムボットの MakeMove 関数には、rand() 関数呼び出しがあります。

ここでの問題は、2 つのボットをロードした後、各ゲームは同じシード値で同じになるはずですが、それらは異なるということです。

私が知っているように、srand はモジュール/スレッドごとに値を保存し、共有しないでください。

テストを行い、それぞれ srand と rand の呼び出しでエクスポートされない関数 mysrand と myrand を作成しました。

エクスポートされた関数内の srand と rand を mysrand と myrand に置き換えました...そしてうまくいきました...

なぜこうなったのかは分かっているのですが、よくわかりません...

なぜ正確にそれが起こるのか、それを回避する方法は、競技者にエクスポートされた関数内で必要な関数を使用してもらいたいからです (プロキシ関数を使用したくない)。

ありがとう。

Windows、コンパイラを使用しています: gcc、ビジュアル C++、ボーランド C++ ビルダー

0 投票する
2 に答える
2757 参照

php - 乱数は5分で生成されます

5分ごとに乱数を生成するにはどうすればよいですか?それを検索したところ、時間間隔の後に乱数を生成する必要があることがわかりました。それを使って、私は次のようにコーディングしました、

しかし、$itemの値は5分で変化しません。このコードを編集するにはどうすればよいですか?