当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


erlang uniform_s(State :: state())用法及代码示例


uniform_s(State :: state()) -> {X :: float(), NewState :: state()}
OTP 18.0

对于指定状态,返回均匀分布在值范围 0.0 =< X < 1.0 中的随机浮点和新状态。

生成的数字的形式为 N * 2.0^(-53),即;间隔内等距。

警告

该函数可能准确返回0.0这对于某些应用程序来说可能是致命的。如果这是不需要的,你可以使用(1.0 - rand:uniform(State))得到间隔0.0 < X =< 1.0,或者改为使用uniform_real_s/1.

如果两个端点都不需要,您可以像这样测试并重试:

my_uniform(State) ->
    case rand:uniform(State) of
        {0.0, NewState} -> my_uniform(NewState);
	Result -> Result
    end
end.

相关用法


注:本文由纯净天空筛选整理自erlang.org大神的英文原创作品 uniform_s(State :: state()) -> {X :: float(), NewState :: state()}。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。