我已经给出了一个带有485x1
元素的矩阵。 MatLab将采用它们中的前12个并使它们成为新的矩阵。
然后我有一个名为C
的变量和一个函数f(C)
。
MatLab将采用新矩阵的第一个元素并使其成为C
。然后它将执行f(C)
并将结果保存为result1
。
然后它应该采用新矩阵的第二个元素并使其成为C
。然后它将再次执行f(C)
并将结果保存为result2
,依此类推。
所以最后我需要12个结果变量。
我该如何编程?
答案 0 :(得分:0)
这个问题要求非常基本的东西。就像解决矩阵的前12个元素一样。您可能需要考虑阅读一些常见问题解答。 但是,基本解决方案可能如下所示:
M = [1:485]'; %// a 485x1 matrix (vector)
newMatrix = M(1:12); %// newMatrix contains the first 12 elements of M (also vector)
result = cell(1,12); %// result as a cell
f = @(x) x+1; % a function f
for i = 1:12
C = newMatrix(i); % get each value from newMatrix, call it C
result{i} = f(C); % apply f() on c and store the result
end
生成变量result1
,result2
,...,result12
不是一个好主意,您可以阅读更多关于here的内容。最好使用单元格存储变量,然后可以将第i个结果作为result{i}
进行处理。