如何在 Toit 中生成随机数?

How do I generate random numbers in Toit?

我正在用 Toit 编写代码。如何从用 Toit 编写的程序生成伪随机数?

我有兴趣生成特定范围内的整数,并在从 0(包含)到 1(不包含)的半开区间中浮动。

在 Toit 中生成伪随机整数的最简单方法是使用核心库中的 random 方法:

main:
  n := random
  log "random integer is $n"

random方法允许你在范围上指定一个约束,所以你可以得到0到10(不包括)之间的20个随机数,记录如下:

main:
  20.repeat:
    log "random integer is $(random 10)"

如果想得到0到1(不包括)范围内的伪随机浮点数,可以通过除法将整数转为浮点数:

main:
  x := (random 10_000).to_float / 10_000
  log "random float is $x"