2017-09-15 8 views
0

今はMATLABコードで作業していますが、yを3ずつ増やして1ずつ増やしたいと思います。forループを3回増やしてからmatlabを使って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

ようこそスタックオーバーフロー。 [良い質問をするにはどうすればいいですか](https://stackoverflow.com/help/how-to-ask)をご覧ください。あなたがコードで直面している問題は何ですか? – FluffyKitten

+0

* *はどういう意味ですか? -1? – percusse

答えて

-1

質問があなたのコードにどのように反映されているかは完全にはわかりません。ただし、yを1と3で交互に増やしたい場合は、forループの標準を作り、yを内部で更新します。次のようなものがあります。

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

まず、訪問したいインデックスのベクトルを作成し、そのベクトルをループします。

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

あなたはループのために使用するpredefined vectorあるいは行列を指定することができます。範囲インデックスを使用する必要はありません。

関連する問題