【发布时间】:2017-09-10 01:21:30
【问题描述】:
我想知道如何在 Matlab 中输出一个 for 循环,以便最终得到一个表,其中第一列是迭代次数,第二列是每次迭代的结果。我希望每次迭代的结果不仅显示最终答案。
作为一个非常简单的例子,我有下面的 for 循环函数。
谢谢。
p=10
for i=[1 2 3 4 5 6 7 8 9]
p=2*p
end
【问题讨论】:
-
你的意思是this
table?
我想知道如何在 Matlab 中输出一个 for 循环,以便最终得到一个表,其中第一列是迭代次数,第二列是每次迭代的结果。我希望每次迭代的结果不仅显示最终答案。
作为一个非常简单的例子,我有下面的 for 循环函数。
谢谢。
p=10
for i=[1 2 3 4 5 6 7 8 9]
p=2*p
end
【问题讨论】:
table?
在您的示例中,i 是迭代变量,因此您可以引用它来获取迭代编号。
我假设您的意思是要输出一个数组(不是实际的 table 数据结构)。要创建一个数组,您可以使用一些简单的连接:
p = 10;
arr = [];
for i = 1:9 % shortcutting your manual method here
arr = [arr; i p]; % concatenate the current array with the new row
p = p .* 2;
end
结果:
arr =
1 10
2 20
3 40
4 80
5 160
6 320
7 640
8 1280
9 2560
如果你真的想要一个表,那么你可以使用 table 函数从数组中创建表
【讨论】: