Skip to content

Commit

Permalink
数値: 乱数列を得る (途中) #4
Browse files Browse the repository at this point in the history
  • Loading branch information
YoshikuniJujo committed Apr 17, 2017
1 parent 4b78c0f commit be7e7a0
Showing 1 changed file with 47 additions and 7 deletions.
54 changes: 47 additions & 7 deletions 数値/乱数を得る.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,37 +4,77 @@
はじめに
--------

プログラミングにおける乱数は大きく、つぎのふたつにわけられる
プログラミングにおける乱数は大きく、つぎのふたつにわけられます

* 擬似乱数
* 暗号論的擬似乱数

それぞれのプログラムの持つ目的によって、きちんと使いわける必要がある
それぞれのプログラムの持つ目的によって、きちんと使いわける必要があります

擬似乱数
--------

### 特徴、用途

生成される乱数列を十分に長く観察することで、
続く値を予測することが可能である場合がある
ゲーム、シミュレーション、乱択アルゴリズムなどに使われる
続く値を予測することが可能である場合があります
ゲーム、シミュレーション、乱択アルゴリズムなどに使われます

### random

#### 特徴

Haskell 98標準に準拠したライブラリ。
つぎのような特徴がある
つぎのような特徴があります

* 周期が短い
* 生成が遅い

このような問題があるため、Haskell 2010では、標準としては含まれていない
パッケージrandomとして使うことができる
このような問題があるため、Haskell 2010では、標準としては含まれていません
パッケージrandomとして使うことができます

#### 使用法

##### 乱数の種を取得する

乱数の種を取得するには、整数を変換して種をつくる方法と、
システムが生成した種を取り出すという方法とがあります。

###### 整数値から乱数の種をつくる

Int型の整数から乱数の種をつくるには関数mkStdGenを使います。

```haskell
> :module System.Random
> mkStdGen 8
9 1
> mkStdGen 123
124 1
```

関数mkStdGenの型は、つぎのようになります。

```haskell
mkStdGen :: Int -> StdGen
```

乱数の種を特定の整数からつくることで
つねにおなじ並びとなる乱数列を取得することができます

###### 起動のたびに異なる乱数の種を取得する

##### 種から乱数を得る

##### 無限乱数列を取得する

##### IO内で簡単に乱数を取得する

##### 乱数の範囲を指定する

##### 乱数の種をふたつにわける

##### システムから新しい乱数の種を取り出す

### mwc-random

#### 特徴
Expand Down

0 comments on commit be7e7a0

Please sign in to comment.