À l'aide de vecteurs de gamme dans la boucle for Dans Matlab
Je me demandais ce que la règle est pour l'utilisation de vecteurs de gamme dans la boucle for dans Matlab?
Par exemple,
range = [0.1:0.01:2]'; % wrong
range = [0.1:0.01:2]; % correct
for i = range
i
end
- Pourquoi est-il que, si
range
est vecteur colonne, il ne fonctionnera pas, alors que
sirange
est vecteur ligne, ça va? - Sera
i = range
être interprété commei
prenant chaque valeur derange
,
oui
est attribué avec un vecteurrange
?
Merci~
OriginalL'auteur Tim | 2012-05-14
Vous devez vous connecter pour publier un commentaire.
Plus généralement,
range
peut être une matrice, et la variable de boucle boucles sur ses colonnes.Donc si
range
est un vecteur ligne, il sera en boucle sur ses valeurs. Mais sirange
est un vecteur colonne, il sera en boucle sur ce même colonne que sa valeur.OriginalL'auteur Sam Roberts
De http://www.mathworks.co.uk/help/techdoc/ref/for.html:
OriginalL'auteur Oliver Charlesworth
Comme vous le découvrirez si vous avez expérimenté, une fois que vous avez fait une cession comme
range = [0.1:0.01:2]
alors la variable appeléerange
est une ligne de vecteur comprenant les valeurs de la plage. Votre boucle fonctionne très bien. Comme il le ferait s'il a commencéfor i = [0.1 0.11 0.12 ...]
OriginalL'auteur High Performance Mark