【问题标题】:Loop Count MATLAB循环计数 MATLAB
【发布时间】:2017-02-02 05:45:11
【问题描述】:

我正在使用 for 循环遍历数组的值。

for i = Sequence

end

i 值为您提供数组上该点的值。但是,有没有办法获得数组循环的位置?例如,for 在第一个数字上没有设置新的变量计数,并且每次循环都加 +1。

假设数组有重复值。

【问题讨论】:

  • 你为什么不使用i作为索引,并在你的序列长度上循环为for i=1:length(sequence)然后在每个循环中你将在i中得到循环计数,你可以访问sequence(i)中的值

标签: arrays matlab loops for-loop


【解决方案1】:

据我所知,没有任何内置方法可以在不使用附加变量的情况下找到循环计数器。如果你不能只使用你的 i 变量,也许你可以做一些关于 Sequence 视图的解决方法(使用一些 find 等),但我坚信添加计数器并增加它是一个更有效的方式。

附:顺便说一句,尽量避免在 MATLAB 中使用 ij - 有用于虚数单位的内置变量:

i = 0 + 1i
j = 0 + 1i

【讨论】:

  • 正如comment 给出的那样,这应该不是问题(关于使用ij 作为变量)。就我个人而言,我还建议始终使用1i 而不是i 作为虚值。
  • @Nemesis 同意你的看法! ij 导致代码崩溃的可能性很小,但对我来说,我仍然更喜欢使用 iijj
【解决方案2】:

这样做的典型方法是让你的循环索引成为计数器,然后索引到你的值数组中

for k = 1:numel(Sequence)
    disp(Sequence(k))
end

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-10-29
    • 1970-01-01
    • 2017-11-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多