如何在for循环matlab中划分两个不同的数组

How to divide two different array in for loop matlab

很抱歉提出这样一个愚蠢的问题。我在编程方面不是很好,而且我在 MATLAB 方面也很糟糕。

我的问题需要帮助。我正在生成一个代码,其中包含 30 个变量(由 u 表示)。我为此使用了循环。我的代码将产生每个变量的值和位置。

我的问题是如何定位并划分变量1到变量16,变量2到变量17,变量3到变量18....直到它到达变量15划分到变量30。我在这个问题上附加了 MATLAB 文件。任何帮助将不胜感激。

这是主文件

start=zeros(2,15);
a=[-12 10 -5 3 21 19 3 7 17 21];

for u = 1:30;   
    acx = rand();
    newacx = round(acx*100);

    if (newacx < 10 || newacx == 10)
       [valueone,positionone] = randomFunction(a); 
    elseif (newacx > 10)
       [valueone,positionone] = max(start(1,:));
    end

    result(u) = valueone 
    % I want to divide result(1)/result(16),result(2)/result(17)...until result (15)/result(30)

    resultX(u)= positionone 
    % I need to identify the position, which I can call when I need to analyze the data

end

这是m文件相关的函数文件

function [value,position]= randomFunction(a)

y=randperm(length(a));
position=y(1);
value=a(position);

end

要应用此除法,请使用 result(1:15)./result(16:30)

运算符 ./(或 rdivide)将 result(1:15) 中的每个元素除以 result(16:30)

中的相应元素