"Continue" in "for loop" based on trial count

I have the following loop set up:
X_vector = [3; -3; -9; -15; -21; -15; -9; -3; 3; 3; -3; -9; -15; -21; -21; -15; -9; -3; 3; 3; -3; -9; -15; -21; -15; -9; -3; 3;];
Y_vector = [15; 15; 15; 15; 9; 9; 9; 9; 9; 3; 3; 3; 3; 3; -3; -3; -3; -3; -3; -9; -9; -9; -9; -9; -15; -15; -15; -15;];
for k = 1 : numel(X_vector)
x = X_vector(k);
y = Y_vector(k);
% Now use x and y in some way.
end
I want the loop to run through all the X and Y vector locations but change every 5 trials to the next X_vector and Y_vector pair (e.g. from (3, 15) to (-3, 15). Do I use a continue function to this?
Thank you in advance for your help!

 採用された回答

Voss
Voss 2023 年 3 月 6 日

0 投票

Maybe this:
for k = 1 : numel(X_vector)
for n = 1 : 5
x = X_vector(k);
y = Y_vector(k);
% Now use x and y in some way.
end
end

6 件のコメント

HumbleCoder
HumbleCoder 2023 年 3 月 6 日
Still not shifting unfortunately.
Voss
Voss 2023 年 3 月 6 日
I interpreted the question to mean that you want to use the first element of X_vector and Y_vector 5 times, then go to the second element and use those 5 times, and so on, so that x and y would go like:
(3,15)
(3,15)
(3,15)
(3,15)
(3,15)
(-3,15)
(-3,15)
(-3,15)
(-3,15)
(-3,15)
(-9,15)
(-9,15)
(-9,15)
(-9,15)
(-9,15)
(-15,15)
(-15,15)
(-15,15)
(-15,15)
(-15,15)
etc.
If that's not what you want, then please explain what you do want.
HumbleCoder
HumbleCoder 2023 年 3 月 6 日
Yep! Exactly what i want! When I tried your suggestion, it only ran 5 trials at the first paired X,Y coordinates then stopped.
Voss
Voss 2023 年 3 月 6 日
Here's the same code as in my answer but with a disp statement to show (x,y) each time. You can see it's as intended.
X_vector = [3; -3; -9; -15; -21; -15; -9; -3; 3; 3; -3; -9; -15; -21; -21; -15; -9; -3; 3; 3; -3; -9; -15; -21; -15; -9; -3; 3;];
Y_vector = [15; 15; 15; 15; 9; 9; 9; 9; 9; 3; 3; 3; 3; 3; -3; -3; -3; -3; -3; -9; -9; -9; -9; -9; -15; -15; -15; -15;];
for k = 1 : numel(X_vector)
for n = 1 : 5
x = X_vector(k);
y = Y_vector(k);
disp([x,y]);
% Now use x and y in some way.
end
end
3 15 3 15 3 15 3 15 3 15 -3 15 -3 15 -3 15 -3 15 -3 15 -9 15 -9 15 -9 15 -9 15 -9 15 -15 15 -15 15 -15 15 -15 15 -15 15 -21 9 -21 9 -21 9 -21 9 -21 9 -15 9 -15 9 -15 9 -15 9 -15 9 -9 9 -9 9 -9 9 -9 9 -9 9 -3 9 -3 9 -3 9 -3 9 -3 9 3 9 3 9 3 9 3 9 3 9 3 3 3 3 3 3 3 3 3 3 -3 3 -3 3 -3 3 -3 3 -3 3 -9 3 -9 3 -9 3 -9 3 -9 3 -15 3 -15 3 -15 3 -15 3 -15 3 -21 3 -21 3 -21 3 -21 3 -21 3 -21 -3 -21 -3 -21 -3 -21 -3 -21 -3 -15 -3 -15 -3 -15 -3 -15 -3 -15 -3 -9 -3 -9 -3 -9 -3 -9 -3 -9 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 3 -3 3 -3 3 -3 3 -3 3 -3 3 -9 3 -9 3 -9 3 -9 3 -9 -3 -9 -3 -9 -3 -9 -3 -9 -3 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -15 -9 -15 -9 -15 -9 -15 -9 -15 -9 -21 -9 -21 -9 -21 -9 -21 -9 -21 -9 -15 -15 -15 -15 -15 -15 -15 -15 -15 -15 -9 -15 -9 -15 -9 -15 -9 -15 -9 -15 -3 -15 -3 -15 -3 -15 -3 -15 -3 -15 3 -15 3 -15 3 -15 3 -15 3 -15
Maybe something in the code you're running (which is replaced by "% Now use x and y in some way." here) runs into an error, which causes execution to stop, or exits the loops early.
HumbleCoder
HumbleCoder 2023 年 3 月 9 日
The error was on my end!! Thank you so much for helping me!! Your suggestion works like a charm!
Voss
Voss 2023 年 3 月 9 日
You're welcome! Glad you got it to work!

サインインしてコメントする。

その他の回答 (0 件)

カテゴリ

ヘルプ センター および File ExchangeMATLAB についてさらに検索

製品

リリース

R2019a

タグ

質問済み:

2023 年 3 月 6 日

コメント済み:

2023 年 3 月 9 日

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by