[MATLAB] Boucle if qui ne marche pas
Fermé
Belki
-
17 sept. 2012 à 11:31
Char Snipeur Messages postés 9688 Date d'inscription vendredi 23 avril 2004 Statut Contributeur Dernière intervention 2 octobre 2020 - 17 sept. 2012 à 14:16
Char Snipeur Messages postés 9688 Date d'inscription vendredi 23 avril 2004 Statut Contributeur Dernière intervention 2 octobre 2020 - 17 sept. 2012 à 14:16
A voir également:
- Boucle if matlab
- Boucle for matlab ✓ - Forum Matlab
- Pc s'allume et s'éteint en boucle - Forum Matériel informatique
- If exist ✓ - Forum Autoit / batch
- Vba if not ✓ - Forum Excel
- Boucle cmd - Forum Programmation
1 réponse
Char Snipeur
Messages postés
9688
Date d'inscription
vendredi 23 avril 2004
Statut
Contributeur
Dernière intervention
2 octobre 2020
1 328
17 sept. 2012 à 14:16
17 sept. 2012 à 14:16
En informatique 90 fois sur 100 le problème vient de ce qu'il y a entre le clavier et la chaise.
Et là c'est le cas, car tu ne connais pas la programmation et la façon de faire de la logique, en particulier la priorité des opérateur.
Bref, "0<=p(1)<=1" ne fait pas ce que tu penses. Il fait 0<=p(1) et retourne true (qui vaut aussi 1) et ensuite il fait 1<=1, et donc retourne true, donc il fait le corps du if et a=p(1). Il faut séparer ton opération en 2 :
if 0<=p(1) && p(1)<=1
Et là c'est le cas, car tu ne connais pas la programmation et la façon de faire de la logique, en particulier la priorité des opérateur.
Bref, "0<=p(1)<=1" ne fait pas ce que tu penses. Il fait 0<=p(1) et retourne true (qui vaut aussi 1) et ensuite il fait 1<=1, et donc retourne true, donc il fait le corps du if et a=p(1). Il faut séparer ton opération en 2 :
if 0<=p(1) && p(1)<=1