matlab equivalent of "+="
1 496 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Hello all,
First of all, I would like to say thanks for all your help. Your prompt and accurate replies save me a lot of programming time.
When I used to program in java, there was a useful command, so to say:
"counter+="
which will increment the variable itself. This was a useful function to use in for loops. I was wondering if matlab had a shortcut expression such as this, something that I can use in an array even, so like
somearray[i]+=; can work? Or is the only available option to say counter=counter+1? I just want to see if there was a faster way to write the expression.
thanks!
Sam
0 commentaires
Réponse acceptée
Sean de Wolski
le 11 Oct 2011
for-loops automatically increment and any reassignment inside the loop will be reset at the next increment:
for ii = 1:10
disp(ii)
ii = 5000;
end
To be able to toy with the counter use a while loop and to the assignment manually
count = count+1;
6 commentaires
Plus de réponses (1)
Walter Roberson
le 11 Oct 2011
MATLAB does not have ++ or += or -- or -= or *= or /= or %= and is not expected to get any of those for some time (if at all.)
I think if you look back at your Java you will find it was ++ rather than += that you were using for incrementing.
4 commentaires
Andrew
le 18 Jan 2024
@Alexandre Sagona Strong agree; I wish my MATLAB class at uni would just let me use C instead.
Real User
le 31 Jan 2024
data(complex_index_sequence, another_one) = data(complex_index_sequence, another_one) + data2
would benefit from "+=". It would be much easier to read and maintain.
It helps a bit to define the indices separately before that line, but "+=" would be better.
Voir également
Catégories
En savoir plus sur Get Started with MATLAB dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!