使用matlab增加一个循环3,然后增加1

问题描述:

我现在正在使用MATLAB代码,并且我想让y增加3,然后增加1,依此类推。使用matlab增加一个循环3,然后增加1

这是代码,如果任何人都可以帮助,这将不胜感激。

for y=1:2:9 
    for x=9:-1:1 
     A(x,y)=1 
     if x==1 && y~=9 
      %y=y+1 
      for x= 1:9 
       A(x,y)=1 
      end 
     end 
    end 
end 
+0

欢迎来到Stack Overflow。请回顾[我如何问一个好问题](https://*.com/help/how-to-ask)。你对代码的确切问题是什么? – FluffyKitten

+0

*等等*是什么意思? -1? – percusse

我不完全确定你的问题是如何反映在你的代码中的。但是,如果你想用1和3交替地增加y,我会制定一个标准的for-loop,然后在里面更新y。例如:

n = 100; 
for i = 1:n 
    y = y + 2*mod(i,2)+1; 
    display(y) %Do things 
end 

您首先制作一个您想要访问的索引矢量,然后遍历该矢量。

idx = [1,2,5]; %and so on 
for ct = 1:length(idx) 
    A(x,y(idx(ct)))=1 
end 

您可以指定一个predefined vector或甚至用于for循环的矩阵;没有必要使用范围指数。