SunuLab
Notre savoir
CoursIntermédiaire8 min de lecture

Les conditions - if, else, comparaisons

Faire des choix dans ton code pour que la tortue se comporte différemment selon la situation

§1.Pourquoi des conditions ?

Jusqu'ici, ton code fait toujours la même chose dans le même ordre. C'est linéaire. Mais souvent, tu veux que ta tortue se comporte DIFFÉREMMENT selon les circonstances : si elle dépasse une certaine distance, qu'elle revienne en arrière. Si l'indice est pair, qu'elle dessine en rouge ; sinon en bleu.

C'est le rôle des conditions : un mécanisme pour dire à l'ordinateur « SI cette situation est vraie, fais ÇA, SINON fais autre chose ». C'est la 3e brique fondamentale de la programmation, après les commandes séquentielles et les boucles.

Premier exemple : un trait court ou long ?
javascript
let taille = 80
if (taille > 50) {
couleur("red") // gros trait → rouge
} else {
couleur("blue") // petit trait → bleu
}
avancer(taille)
Résultat : Comme taille (80) est plus grand que 50, le trait sera rouge. Si tu changes taille à 30, il sera bleu.

§3.La structure if (...)

if (condition) { ... }
Exécute le bloc { ... } SEULEMENT SI la condition est vraie. Sinon, on passe directement à la suite.
if (...) { ... } else { ... }
Si la condition est vraie, fait le premier bloc. Sinon (else), fait le bloc else.
if (...) { ... } else if (...) { ... } else { ... }
Permet de tester PLUSIEURS conditions dans l'ordre. Dès qu'une est vraie, on exécute son bloc et on saute tout le reste.
Plusieurs branches avec else if
javascript
let vitesse = 75
if (vitesse < 30) {
couleur("green") // lente : vert
} else if (vitesse < 60) {
couleur("orange") // moyenne : orange
} else {
couleur("red") // rapide : rouge
}
avancer(50)
Résultat : Comme vitesse (75) est ≥ 60, on prend la branche else : trait rouge.

§5.Les opérateurs de comparaison

x === y
Égal à (TROIS signes égal). Attention : x = y est une AFFECTATION (donne la valeur de y à x), pas une comparaison.
Exemple. if (i === 0) { ... } — vrai uniquement quand i vaut 0.
x !== y
Différent de.
Exemple. if (couleur !== "red") { ... }
x < y / x > y
Plus petit que / plus grand que (strict, n'inclut pas l'égalité).
x <= y / x >= y
Inférieur ou égal / supérieur ou égal.

§7.Conditions dans une boucle

Le combo boucle + condition est ultra puissant. Tu peux alterner des couleurs, sauter certains tours, faire des motifs en damier…

Alternance par parité
javascript
for (let i = 0; i < 20; i++) {
if (i % 2 === 0) {
couleur("red") // i pair : rouge
} else {
couleur("blue") // i impair : bleu
}
avancer(20)
tourner_droite(18)
}
Résultat : Un soleil aux rayons alternativement rouges et bleus.

i % 2 vaut 0 pour i pair, 1 pour i impair. On utilise cette propriété pour alterner.

§9.Combiner plusieurs conditions

&& (et)
VRAI si les DEUX conditions sont vraies en même temps.
Exemple. if (x > 0 && x < 100) — vrai uniquement quand x est entre 0 et 100.
|| (ou)
VRAI si au moins UNE des deux conditions est vraie.
Exemple. if (jour === "samedi" || jour === "dimanche") — vrai le weekend.
! (non)
Inverse une condition : !vrai = faux, !faux = vrai.
Exemple. if (!estPair) { ... } — exécute si estPair n'est PAS vrai.
Combinaison &&
javascript
for (let i = 0; i < 30; i++) {
// Tous les nombres pairs ET multiples de 3 → bloc rouge
if (i % 2 === 0 && i % 3 === 0) {
couleur("red")
epaisseur(5)
} else {
couleur("#7c3aed")
epaisseur(2)
}
avancer(15)
tourner_droite(12)
}
Résultat : Une spirale violette dont certains segments (multiples de 6 : 0, 6, 12, 18, 24) sont rouges et plus épais.

§11.Les valeurs booléennes

Une condition renvoie toujours une valeur dite « booléenne » : soit true (vrai), soit false (faux). Ce sont les seules valeurs que peut prendre un booléen.

Tu peux stocker un booléen dans une variable : let trouve = false; puis plus tard if (...) { trouve = true; }. C'est très utile pour mémoriser un état (déjà vu ? déjà gagné ? déjà dessiné ?).

Mémoriser un état
javascript
let dejaTourne = false
for (let i = 0; i < 10; i++) {
avancer(40)
// À mi-parcours, on tourne à 90° une seule fois
if (i === 5 && !dejaTourne) {
tourner_droite(90)
dejaTourne = true
} else {
tourner_droite(36)
}
}

À retenir

  • if (condition) { ... } else { ... } pour faire un choix.
  • Les comparaisons utilisent === (égalité), !==, <, >, <=, >=.
  • TROIS signes égal pour comparer, UN seul signe = pour affecter.
  • && (et), || (ou), ! (non) pour combiner ou inverser.
  • Un booléen vaut true ou false — utile pour mémoriser un état.
  • if + boucle = comportement riche : alternance, motifs complexes.
Mots-clésconditionifelsecomparaisonlogiquebooléen