问题
How can you generate a random number from a specific range, for example the integer 34 in the range [1, 100]?
I looked at the Random structure but it doesn't give me what I want, at least from what I can understand.
回答1:
I think you have to use the Random structure in the given link like this ...
- val nextInt = Random.randRange (1,100);
- val r = Random.rand (1,1);
- val x1 = nextInt r;
- val x2 = nextInt r;
回答2:
To get 34 integers between 1 and 100, you could use:
let
val seed = Random.rand (123,456)
in
List.tabulate(34, fn i => Random.randRange (1,100) seed)
end;
Note that the value seed
is a reference that gets updated with each call to Random.randRange
.
来源:https://stackoverflow.com/questions/22067535/generating-a-random-number-in-sml