How to tell loop how many values to skip?

1 Ansicht (letzte 30 Tage)
MC3105
MC3105 am 28 Sep. 2014
Bearbeitet: MC3105 am 28 Sep. 2014
Hello everyone!
I want to create a loop similar to:
t=1:24:300
BUT I don't want the loop to skip 24 values after every run-through. After each run-through I want to tell the loop exactly how many values it should skip.
For example: The first run-through should be from 1:24, the second should be from 25:30, the third should be from 31:50.... and the last one from 277:300.
Is this possible in matlab?
  2 Kommentare
José-Luis
José-Luis am 28 Sep. 2014
Bearbeitet: José-Luis am 28 Sep. 2014
Do you know the values beforehand or will they be calculated inside the loop? Also, I don't really understand what you mean by 25:30, 31:50, etc...
MC3105
MC3105 am 28 Sep. 2014
I just found a solution :)
I can do
t=1:s:300
then I can calculate the number of steps to skip within the loop :)

Melden Sie sich an, um zu kommentieren.

Akzeptierte Antwort

Star Strider
Star Strider am 28 Sep. 2014
This seems to do what you want:
X = linspace(0, 10, 300); % Create Data Vector
t = [0 24 30 50 276 300]; % Partition Index Vector
for k1 = 1:length(t)-1
Y{k1} = X(t(k1)+1:t(k1+1));
end
The cell array ‘Y’ has your partitioned sections from vector ‘X’. Create ‘t’ to be whatever values you want. I used the numbers you defined in your Question in this example.
  1 Kommentar
MC3105
MC3105 am 28 Sep. 2014
Bearbeitet: MC3105 am 28 Sep. 2014
unfortunately i don't know beforehand how my intervals will look like..
but I just found my solution: it's possible to do t=1:s:24 and then calculate the number of steps that the loop should skip before the next run-through as s within my loop :)

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (1)

Marc
Marc am 28 Sep. 2014
It is definitely possible but your logic is not very clear. Since you are choosing odd intervals, is there some underlying reason for 1 thru 24 followed by 25 thru 30, etc. etc.
You could use if/else-if/else or switch/case or while but we would need to have some condition met to move to the next run, and so on.

Kategorien

Mehr zu Loops and Conditional Statements finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by