Bonjour,
Je souhaite savoir s'il est possible de créer une exception pour une boucle for, d'enlever un élément.
Je souhaite par exemple faire une boucle de 1 à 7 en ne prenant pas la valeur 4 (1,2,3,5,6,7).
Merci pour votre aide.








Bonjour,
Je souhaite savoir s'il est possible de créer une exception pour une boucle for, d'enlever un élément.
Je souhaite par exemple faire une boucle de 1 à 7 en ne prenant pas la valeur 4 (1,2,3,5,6,7).
Merci pour votre aide.

Bonsoir,
Oui c'est possible. Quelque chose du genre
Voire utiliser la fonction setdiff
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 for i = [1:3 5:7] end
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 for i = setdiff(1:7,4) end








Bonsoir !
Merci !
C'est aussi possible avec la fonction continue
Résultat :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 for i=1:7 if i~=4 x(i)= i continue; end end
A+
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3x = 1 2 3 0 5 6 7
Bonsoir,
Ce n'est pas la fonction continue qui te permet de ne pas traiter le cas i=4, c'est uniquement la condition if. D'ailleurs dans ton code, continue ne sert à rien.
L'avantage du code de Winjerome est qu'il permet d'éviter d'ajouter une ligne de comparaison à chaque itération.
Pour une bonne utilisation des balises codec'est ici!
Petit guide du voyageur MATLABien :Le forum
La faq
Les tutoriels
Les sources
La nature est un livre écrit en langage mathématique. Galilée.
Partager