Top > プログラミング > .NET Tips> 乱数を生成する

乱数を生成する」への評価、コメント

評価

良い / 悪い = 42 / 13 (「良い」の割合 = 0.764 , 人気度 = 1.330

評価する

コメント一覧


通常のコメント
管理人 2018/02/2 (Fri) 01:31:24
> RNGCryptoServiceProviderクラスの下に書く補足としてはいろいろよろしくないのでは。

この補足は、次の機会に削除します。ご指摘、ありがとうございました。

通常のコメント
匿名 2018/02/1 (Thu) 02:14:59
剰余で乱数値を狭めるアルゴリズムは除数が範囲の約数でない限りわずかに出現範囲に偏りが生じるものであり
暗号で使用する乱数という観点において設計されたRNGCryptoServiceProviderクラスの下に書く補足としてはいろいろよろしくないのでは。

評価の理由
xna40tryed 2011/04/5 (Tue) 23:41:29
評価:良い
他サイトで「未満」を「以下」と間違えていたところを、このサイトでは正しくなっていました。
マイナスからの乱数も盲点ですが、このサイトではきちんと説明されていました。
乱数初期化の説明もしっかりされていました。
いろいろなC#乱数説明サイトの中で一番良かったです。

通常のコメント
メルサイア 2010/03/14 (Sun) 19:37:34
すみません,下記コメントに誤字がありました.
×【以上】 → ○【以下】
です.
もしご存じでしたらで結構ですので,回答よろしくお願いいたします.

通常のコメント
メルサイア 2010/03/14 (Sun) 19:35:24
いつもC#プログラミングのわかりやすい説明をありがとうございます.
度々拝見させていただき,とても助かっています.

前の方の質問と少し似ているのですが,
0.0以上~1.0未満の乱数を生成するNextDouble()を使って,
『0.0以上~1.0【以上】』の乱数を生成するメソッドはどう作ればよいのでしょうか?

整数型の場合は,既に準備されているNext()を使って,
●Next(_minValue, _maxValue+1);
でいいのですが,
浮動小数点型の場合,
0.0~0.999...が永遠に続くので,どこで0.000...001を足すべきなのかがわからなくなります.

ご参考に,0.0以上~1.0未満の浮動小数点を作る式はわかっています.
●NextDouble()*(最大値 - 最小値) + 最小値
これを応用して,
0.0以上~1.0【以上】とするには,
○(NextDouble()+X) *(最大値 - 最小値) + 最小値?
のXが鍵だと思っています.
(※要するに,Xは,有効桁数を合わせて入力しないと作れない??)

通常のコメント
管理人 2010/01/20 (Wed) 01:42:37
>> next(10,-10)の説明ですが正しくは「-10から9まで」の乱数 を生成するの間違いではないでしょうか。

> 修正されたのかどうかは分からないのですが、現在見る限りの記事は-10以上、10未満です。修正されたのかな?

はい、修正しました。修正したことについて明記するのを忘れていたようで、ご迷惑をおかけして申し訳ありませんでした。

通常のコメント
匿名 2010/01/19 (Tue) 12:54:04
>> next(10,-10)の説明ですが正しくは「-10から9まで」の乱数 を生成するの間違いではないでしょうか。

修正されたのかどうかは分からないのですが、現在見る限りの記事は-10以上、10未満です。修正されたのかな?そうでないなら等後者さんが、未満を以下と勘違いされたているのだと思います。
かなり前でおせっかいだと思ったのですが、一応応答らしきものを記述した方がいいかなと思い記述しました。

評価の理由
匿名 2009/10/16 (Fri) 12:09:47
評価:良い
いつもながら助かりました

通常のコメント
burizou 2008/08/12 (Tue) 23:46:02
プログラミングで困ったときはいつも拝見させていただいております。
乱数生成の記事に気になる点があったのでコメントします。
 next(10,-10)の説明ですが正しくは「-10から9まで」の乱数を生成するの間違いではないでしょうか。
こまかいことなのですが、はまってしまったので…
ご確認願いします。

評価の理由
ていお〜 2007/04/24 (Tue) 14:39:02
評価:良い
.NET環境での適切な乱数生成のサンプルがあったため。

評価の理由
加藤 一郎 2005/10/14 (Fri) 21:15:11
評価:良い
乱数の最初の定義を
pravate System.Random random;
と書いたら、エラーが出て進みませんでした。
困っていたときにこの記事を見て、
newで宣言し直すことを知りました。
とても助かりました。

評価の理由
匿名 2004/02/18 (Wed) 16:42:21
評価:良い
Randomクラス使おうとしたから

評価の理由
名乗るほどでは 2004/02/15 (Sun) 22:20:51
評価:良い
欲しいサンプルがあったから

コメントの投稿

[説明]