質問編集履歴
4
新たなアルゴリズムを模索\(迷走\)
title
CHANGED
File without changes
|
body
CHANGED
@@ -41,4 +41,7 @@
|
|
41
41
|
@yumetodo ヒント1: 64bitのビット列を完全に出力させて、それをdouble形式として読み込み、分布を調べると 0.0近辺に集中していることが判る。「それはランダムな浮動小数点分布」として欲しい分布なのか?
|
42
42
|
```
|
43
43
|
|
44
|
-
自力で検証していないけど0.0付近に集中したらアカンなぁ・・・
|
44
|
+
自力で検証していないけど0.0付近に集中したらアカンなぁ・・・
|
45
|
+
完全に整数版で作ったbit列を浮動小数点に変換する方向に考えていたので。
|
46
|
+
|
47
|
+
区間を生成個数で分割して各区間ごとに乱数生成してvectorに放り込んでshuffleとかしなきゃいけないんだろうか
|
3
別のアルゴリズムを考えるべきか
title
CHANGED
File without changes
|
body
CHANGED
@@ -29,4 +29,16 @@
|
|
29
29
|
- 浮動小数点型は``float``, ``double``, (``long double``)のことを指す
|
30
30
|
- 浮動小数点型の内部仕様はIEEE754に従う
|
31
31
|
- ``(size_t)((int)(rand_max) - (int)(rand_min)) < size``
|
32
|
-
- ``sizeof(long double) == sizeof(uint64_t)``
|
32
|
+
- ``sizeof(long double) == sizeof(uint64_t)``
|
33
|
+
|
34
|
+
# 追記
|
35
|
+
|
36
|
+
[浮動小数点表現での一定範囲内の全列挙…だと?! | okkyの日記 | スラド](http://srad.jp/~okky/journal/600855/)
|
37
|
+
にて、全列挙のコストの高さを突きつけられたので別のアルゴリズムを模索中です。
|
38
|
+
|
39
|
+
[https://twitter.com/fjs_kyousosama/status/704681468535009281](https://twitter.com/fjs_kyousosama/status/704681468535009281)
|
40
|
+
```
|
41
|
+
@yumetodo ヒント1: 64bitのビット列を完全に出力させて、それをdouble形式として読み込み、分布を調べると 0.0近辺に集中していることが判る。「それはランダムな浮動小数点分布」として欲しい分布なのか?
|
42
|
+
```
|
43
|
+
|
44
|
+
自力で検証していないけど0.0付近に集中したらアカンなぁ・・・
|
2
環境について補足
title
CHANGED
File without changes
|
body
CHANGED
@@ -25,4 +25,8 @@
|
|
25
25
|
|
26
26
|
などという意見を頂きましたが、正直Twitterはこういうのを聞くのに向かないな、と思いまとめました。(なにより私が混乱してきた)
|
27
27
|
|
28
|
+
# 環境等
|
29
|
+
- 浮動小数点型は``float``, ``double``, (``long double``)のことを指す
|
30
|
+
- 浮動小数点型の内部仕様はIEEE754に従う
|
28
|
-
|
31
|
+
- ``(size_t)((int)(rand_max) - (int)(rand_min)) < size``
|
32
|
+
- ``sizeof(long double) == sizeof(uint64_t)``
|
1
補足
title
CHANGED
File without changes
|
body
CHANGED
@@ -25,4 +25,4 @@
|
|
25
25
|
|
26
26
|
などという意見を頂きましたが、正直Twitterはこういうのを聞くのに向かないな、と思いまとめました。(なにより私が混乱してきた)
|
27
27
|
|
28
|
-
浮動小数点型はIEEE754に従うものとし、``(size_t)((int)(rand_max) - (int)(rand_min)) < size``とします。
|
28
|
+
浮動小数点型は``float``, ``double``, (``long double``)のことを指し、IEEE754に従うものとし、``(size_t)((int)(rand_max) - (int)(rand_min)) < size``とします。
|