使用./ Matrix尺寸时出错必须同意

时间:2014-10-30 18:50:49

标签: arrays matlab matrix

家庭作业的一部分是模拟100次骰子的1000次,并绘制6次碾压的累计和除以擀面数。例如,如果我第一次滚动16个六,下一个滚动12个,第三个滚动14个,那么下面的点应该在图形(1,16),(2,14)和(3,14)上。< / p>

我存储了numSixAr中累积的六个累计数,我试图将其除以数组x = 1:1000。 (在这个例子中,numSixAr = [16,28,42 ...]和x = [1,2,3 ...])。

我正在尝试numSixAr./x,但是matlab说矩阵尺寸不相等。但是,我在操作之前打印尺寸,它们实际上是相同的吗?

我的代码是

    n=1000;
    rolls = rand(100,1);
    numSix=0;
    sumRolls=0;
    numSixAr=zeros(n,1);
    sumRollsAr=zeros(n,1);
    for j=1:n,
    for i = 1:100,

        if(rolls(i)>=5/6)
            numSix = numSix+1;
        end
        sumRolls = sumRolls + floor(6*rolls(i)+1);



    end
    numSixAr(j)=numSix;
    numSix=0;
    sumRollsAr(j)=sumRolls;
    sumRolls=0;
    end

    for  i= 2 : 1000
   numSixAr(i)=numSixAr(i-1) + numSixAr(i); 
    end
    x=1:n;
    disp(length(numSixAr));
    disp(length(x));
    disp(length(numSixAr./x));
    plot(x, (numSixAr)./x);

错误发生在&#34; disp(length(numSixAr./x));&#34;。 (倒数第二行) 输出是 1000 1000

为什么matlab认为这些数组长度不等?我该怎么做才能解决这个问题?

0 个答案:

没有答案