Index Vector in MATLAB

2 vues (au cours des 30 derniers jours)
Justine Schneider
Justine Schneider le 31 Juil 2017
Commenté : Star Strider le 31 Juil 2017
How do I index a vector in a for loop? I should be able to call the first entry of the vector a with a(1); however, I get an error when I have this as my for requirement. The error says unbalanced or unexpected parenthesis.
Here is a simplified version of my code.
a = [1 2 3]; b = [4 5 6];
for a(1) AND b(1);
suma = a + 1;
sumb = b +1;
end

Réponse acceptée

Star Strider
Star Strider le 31 Juil 2017
I do not understand what you want to do.
One of these should work:
a = [1 2 3]; b = [4 5 6];
for k = 1:min([numel(a) numel(b)])
suma = a(k) + 1;
sumb = b(k) + 1;
end
or:
suma = 0; sumb = 0;
for k = 1:min([numel(a) numel(b)])
suma = a(k) + suma;
sumb = b(k) + sumb;
end
or:
suma = sum(a);
sumb = sum(b);
or maybe something else ...
  3 commentaires
Justine Schneider
Justine Schneider le 31 Juil 2017
... from your first MATLAB code answer.
Star Strider
Star Strider le 31 Juil 2017
That simply prevents the index from reading a shorter vector beyond the number of elements it has. (Here, they are both the same size.)

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Loops and Conditional Statements 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!

Translated by