Effacer les filtres
Effacer les filtres

What is the best practice in MATLAB to increase a variable in a cycling way?

1 vue (au cours des 30 derniers jours)
I have some variables that need to be incremented in a loop, and should go back to 0 when hit some value. The current way I am doing this is:
cluster = 1;
for I = 1 : n
cluster = clusterNumber + 1;
if cluster == max
cluster = 1;
end
end
However, as the script goes on, there are a lot of these cases.
So, is there a function in MATLAB or a better way to do this? For example, writing a function like this:
cycling-increase(count, interval, max, backToValue);
Thanks!
Meanwhile, this is my first question. Please do tell me if anything I put up does not meet the rules or conventions of MATLAB Answers. Thanks again!

Réponse acceptée

Stephen23
Stephen23 le 26 Nov 2017
Modifié(e) : Stephen23 le 26 Nov 2017
Just use mod:
for k = 1:10
1+mod(k-1,5)
end
which displays:
ans = 1
ans = 2
ans = 3
ans = 4
ans = 5
ans = 1
ans = 2
ans = 3
ans = 4
ans = 5
  1 commentaire
jackxujh
jackxujh le 26 Nov 2017
That is such a genius and elegant solution! Thanks! Really appreciate it!

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur 编程 dans Help Center et File Exchange

Produits

Community Treasure Hunt

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

Start Hunting!