【发布时间】:2015-05-09 08:03:31
【问题描述】:
再次为一天中的多个愚蠢问题感到抱歉。我是新手,不太懂编程。我在here问了一个关于for循环的简单问题,已经整理出来了:
How to divide two different array in for loop matlab
我需要在多次迭代(比如 10 000)内启动这个 for 循环,以获得输出,其中 result (1:15)./result (16:30)每次迭代都会不同。这意味着,对于每次迭代,结果(u)都会变化。而且我还需要在每次迭代时输出 resultX(u)(位置)。
我已经用 for 循环试过了。但它不断给我每次迭代的相同结果。我也不怎么矢量化这个,这是最糟糕的。拜托,我需要这方面的帮助。
从 cmets 获取的其他信息
我需要一个矩阵输出(row = iteration, column=u)。
我希望每次迭代都有u 值的变化,这就是为什么我每次都提示下面的代码
u:acx = rand();
newacx = round(acx*100);
if (newacx < 10 || newacx == 10)
[valueone,positionone] = randomFunction(a);
elseif (newacx > 10)
[valueone,positionone] = max(start(1,:));
end
【问题讨论】:
-
我认为这是一个很容易回答的问题,如果你能提供一个你正在尝试做的最小例子。确保包括输入变量(即使它只是它们的大小/尺寸,如果你不能适应实际数据),以及你希望输出的样子。
-
嗨,@jedwards。我需要一个矩阵输出 (row = iteration, column=u) 。我想要每次迭代的 u 值的变化,这就是为什么我提示下面的代码为每个 u ---> (
acx = rand(); newacx = round(acx*100);) 然后条件 if else (if (newacx < 10 || newacx == 10), [valueone,positionone] = randomFunction(a); elseif (newacx > 10), [valueone,positionone] = max(start(1,:)); end)。我希望这能解释你的问题
标签: matlab for-loop nested vectorization