Forums - La Blocothèque - And et or dans la même condition
Bonjour,
Je rencontre un souci, je voudrais créer une condition comme ceci:
A and B and C or D or E or F
En fait je voudrais vérifier que l’apprenant a validé les flags A, B, C et un des des flags D, E ou F mais dans la même ligne de condition, comment puis-je formuler ma condition sachant que celle du dessus ne fonctionne pas.
Merci
Bonjour,
C’est un problème de parenthèses et de choix d’opérateur.
Nous pouvons trouver la bonne condition en traduisant étape par étape votre phrase depuis sa version en français :
que l’apprenant a validé les flags A, B, C et un des des flags D, E ou F
=> les flags A et B et C d’une part, et, un des des flags D, E ou F d’autre part
=> (A et B et C d’une part), et, (D ou E ou F d’autre part)
=> (A et B et C) et (D ou E ou F)
=> (A and B and C) and (D or E or F)
La bonne condition est donc :
(A and B and C) and (D or E or F)
Remarque : les premières parenthèses autour de (A and B and C) sont optionnelles, car l’opérateur and est prioritaire sur l’opérateur or. Exactement comme si les and de cette condition étaient des multiplications et que les or étaient des additions (les premières parenthèses seraient optionnelles).