我想在 Befunge 中生成一个随机数,从 0 到 n,其中 n 是一个任意数。我该怎么做呢?
我想试试这个(这个例子有 2 个链接的代码块来展示它是如何工作的):
v v
?#>?#>
1 1
+ +
> ^> ^
并根据需要重复,但我需要那段代码的 n 个副本。
有没有更好的方法可以生成其他语言的 rand(0, 10)
之类的随机数?
最佳答案
此代码段将主要执行您想要的操作。 (它在 0 处刹车。)
0v \<
>?>\1-:|
1+ >$
>^
请注意,在我的生成器和你的生成器中,分布都不是平坦的;它是 binomial . 这个 block 将产生一个从 0 到 2^n-1 平滑分布的随机数:
0v *2\<
>?>\1-:|
1+ >$
>^
关于random - 在 Befunge 中生成随机数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31084774/