在SML中生成随机数

时间:2014-02-27 11:45:19

标签: random sml

如何从特定范围生成随机数,例如[1,100]范围内的整数34?

我看了Random structure,但它并没有给我我想要的东西,至少从我能理解的东西开始。

2 个答案:

答案 0 :(得分:3)

我认为你必须在给定的链接中使用随机结构,如...

- val nextInt = Random.randRange (1,100);
- val r = Random.rand (1,1);
- val x1 = nextInt r;
- val x2 = nextInt r;

答案 1 :(得分:0)

要获取1到100之间的34个整数,可以使用:

let
    val seed = Random.rand (123,456)
in
    List.tabulate(34, fn i => Random.randRange (1,100)  seed)
end;

请注意,值seed是一个引用,每次调用Random.randRange时都会更新。