【问题标题】:Matlab random number rangeMatlab随机数范围
【发布时间】:2013-10-10 22:13:34
【问题描述】:

我正在努力生成 x 范围内的随机数。

假设 x 为 4,范围为 -2 到 2,如果为 6,则为 -3 到 3。

我知道是

rand() * something + somethingelse

【问题讨论】:

    标签: matlab random numbers range


    【解决方案1】:

    从你离开的地方不难找到解决方案:

    rand() * something + somethingelse
    

    从左到右:

    rand():从 0 到 1

    我们想让范围扩大 4 倍,所以我们这样做了:

    rand()*4:从 0 到 4

    现在宽度是正确的,我们只需要给它正确的位置:

    rand()*4-2:从-2到2

    【讨论】:

      【解决方案2】:

      你要取出rand*x的均值,即x/2

      x = [1 2 3 4 5 6 7]
      rand(1,numel(x)).*x-x/2
      
      ans =
      
          0.4172   -0.4283    0.7716    1.0149   -0.5978    0.4069   -2.9690
      

      【讨论】:

        猜你喜欢
        • 2016-05-09
        • 2013-12-14
        • 2019-08-09
        • 1970-01-01
        • 2011-07-01
        • 2013-01-07
        • 1970-01-01
        • 2011-12-16
        • 2022-01-09
        相关资源
        最近更新 更多