Exercice 8/16

Soit les variables var1, var2 et var3 déjà déclarées et qui contiennent une valeur.

Dans le fichier "script.js" :

  • écrivez deux structures if, l'une en dessous de l'autre;
  • la première doit vérifier si var1 est strictement supérieure à var2 et inférieure ou égale à var3 (dans cet ordre);
  • le code à exécuter sera alert("La condition 1 est vérifiée");;
  • la seconde doit vérifier si var1 est strictement inférieure à var2 et supérieure ou égale à var3 (dans cet ordre);
  • le code à exécuter sera alert("La condition 2 est vérifiée");;
  • cliquez sur "Soumettre ma réponse".

Remarque :

Normalement, le premier test renvoie false donc vous ne verrez pas le message correspondant car alert(); ne sera pas exécuté.

Leçon 8/16

Voyons maintenant concrètement les structures conditionnelles, qu'on appellera simplement "conditions". Il existe trois types de conditions :

  • la stucture if else;
  • les switchs;
  • les ternaires;

Commençons par la première qui est aussi la plus utilisée.
Dans les exercices précédents vous avez vu comment récupérer un booléen (true,false`) en testant des variables avec les opérateurs de comparaison et les opérateurs logiques.

Avec les conditions; le résultat (booléen) d'un test permettra de modifier le flux d'exécution de votre code et donc de donner une certaine intelligence à votre script.

La structure if (si)

Elle est composée :

  • du mot-clé if;
  • suivi de parenthèses () contenant l'expression à tester, et donc le booléen qui est retourné en résultat;
  • des accolades {} contenant le code à exécuter si la condition entre les parenthèses est vérifiée, résultat true.

Exemple :

if (1 == 1)
{
    // La condition est vérifiée (true), on exécute le code qui est ici.
}

if (1 === "1")
{
    // La condition n'est pas vérifiée (false) car les variables n'ont pas le même type, donc tout le code ici ne sera pas exécuté.
}

Une structure conditionnelle doit rester lisible, surtout quand elle devient complexe, aussi il est fortement conseillé de l'écrire comme ceci :

if ()
{
    // Votre code ici
}
  • un espace entre le if et les parenthèses ();
  • allez à la ligne pour ouvrir les accolades {;
  • indentez le code entre les accolades avec une tabulation pour bien voir la hiérarchie;
  • allez à la ligne pour fermer les accolades;
  • les 2 accolades doivent être alignées, ainsi vous verrez plus facilement si il y a un oubli et à quel niveau;

Cet exemple est une très bonne façon d'écrire des conditions et dans cet exercice vous devez utiliser ce modèle.

Commentaires les mieux notés

395 Commentaires

  • charlesprat777-89

    charlesprat777-89

    var var1 = 5; var var2 = 6; var var3 = 4; /* Votre premiere condition ici */ if (var1>var2,var1<=var3) &#123; alert("La condition 1 est vérifiée"); } /* Votre deuxième condition ici */ if (var1<var2,var1>=var3) &#123; alert("La condition 2 est vérifiée"); } j'ai ensuite vu les corrections donc j'ai valide l'exercice mais je ne suis pas sur d'avoir compris reelement pourquoi le bot n'a pas accepté ce premier code

    le 08/03/2023 à 11h25

  • Patricio M

    Patricio M Admin

    La condition est mal écrite...

    le 09/03/2023 à 08h28

  • oroux26-95

    oroux26-95

    Bonjour, ça me met le message d'erreur "Dans votre première condition, vous avez besoin d'une instruction dans le block"

    le 01/02/2023 à 16h47

  • Patricio M

    Patricio M Admin

    Ton dernier code est correct

    le 02/02/2023 à 11h05

  • alisenane19-5

    alisenane19-5

    s'il vous plaît est ce que quelqu'un qui a validé l'exercice peux corriger mon code, ça fais une heure que je tourne en rond sans comprendre mon erreur ça me dis que "le test de la condition 1 est invalide". voici mon code: if ('var1>var2'&&'var1<= var3') &#123; alert ("La condition 1 est vérifiée"); } if ('var1<var2'&&'>= var3') &#123; alert ('La condition 2 est vérifiée'); }

    le 24/01/2023 à 20h22

  • Patricio M

    Patricio M Admin

    Oui, moi je peux t'aider... le test est invalide, car tu as écris une chaine de caractères... enlève les '

    le 25/01/2023 à 09h33

  • mathieuglb-94

    mathieuglb-94

    Bonjour, je ne comprends pas mon erreur, merci

    le 01/10/2022 à 13h16

  • Patricio M

    Patricio M Admin

    Mathieu, enlève le ; après {

    le 03/10/2022 à 08h30

  • veroniquedouce-83

    veroniquedouce-83

    Bonjour, je ne comprends pas mon erreur. Pouvez-vous m'aider, s'il vous plaît ? Merci

    le 23/09/2022 à 17h48

  • Patricio M

    Patricio M Admin

    le IF entre parenthèses

    le 26/09/2022 à 09h06

  • Aurel6622

    Aurel6622

    Problème résolu

    le 18/05/2022 à 09h15

  • meriam

    meriam Admin

    N'hésitez pas à demander de l'aide si vous trouvez des problèmes dans les exercices suivants.Bon travail.

    le 18/05/2022 à 12h54

  • Aurel6622

    Aurel6622

    Dans votre première condition, vous n'avez besoin que d'une instruction dans le block

    le 17/05/2022 à 16h05

  • meriam

    meriam Admin

    Bonjour, vous devez supprimer le point-virgule aprés la condition de la structure if.

    le 18/05/2022 à 12h30

  • nniatsireb-31

    nniatsireb-31

    Bonjour, je souhaiterai savoir pour quoi pas utiliser if (var1>var2<=var3); a la place de if (var1>var2 && va1<=var3) ??

    le 31/03/2022 à 13h00

  • meriam

    meriam Admin

    Il faut vériier que var1 > var2 et que var2<=var3

    le 05/04/2022 à 19h54

  • aoudeche.amina1-26

    aoudeche.amina1-26

    Bonjour, je n’arrive pas à valider l’exercice

    le 24/03/2022 à 15h25

  • meriam

    meriam Admin

    Bonjour, au niveau de la 2 ème structure if, vous devez vérifier si var1 est strictement inférieure à var2

    le 28/03/2022 à 13h09

  • meriam

    meriam Admin

    Au niveau de la 2 ème structure if, il faut supprimer var1 situé entre l'accoalde ouvrante et alert()

    le 28/03/2022 à 13h10

  • imanehemmade-69

    imanehemmade-69

    var var1 = 5; var var2 = 6; var var3 = 4; /* Votre premiere condition ici */ if ( var1 > var2 && var1 <= var3) ; alert("La condition 1 est vérifier");} /* Votre deuxième condition ici */ if (var1 < var2 && var1 >= var3) ; alert("La condition 2 est vérifier");} mon code est pas bon ?

    le 03/02/2022 à 01h38

  • meriam

    meriam Admin

    Bonjour, il faut pas ajouter un point virgule aprés la condition de la structure if.

    le 03/02/2022 à 09h46

  • emilie.bld22-2

    emilie.bld22-2

    j'ai trouvé par contre pourquoi remplacer &#123 par &#123;

    le 01/02/2022 à 10h18

  • meriam

    meriam Admin

    Bonjour, il faut toujours utiliser les accoaldes et nn pas le code &#123;

    le 01/02/2022 à 11h20

  • emilie.bld22-2

    emilie.bld22-2

    bonjour, je ne comprends pas l'exercice, merci, if (var1>var2&&var1<=var3) &#123; alert("La condition 1 est vérifiée") /* Votre premiere condition ici */ } if (var1<var2&&var1>=var3) &#123; alert("La condition 2 est vérifiée") /* Votre deuxième condition ici */ }

    le 01/02/2022 à 09h55

  • meriam

    meriam Admin

    Bonjour, il faut remplacer le code &#123; par une accolade {

    le 01/02/2022 à 11h20

  • gael.delaire-62

    gael.delaire-62

    qu'elle est mon erreur?

    le 31/01/2022 à 21h51

  • meriam

    meriam Admin

    Bonjour, il faut supprimer le point virgule que avez ajouté avant l'accolade ouvrante de la structure if.

    le 01/02/2022 à 11h13

  • dupin.mathieu-47

    dupin.mathieu-47

    Bonjour, je ne comprends pas mon erreur : var var1 = 5; var var2 = 6; var var3 = 4; if (var1 > var2 && var1 <= var3); &#123; alert("La condition 1 est vérifiée"); } if (var1 < var2 && var1 >= var3); &#123; alert("La condition 2 est vérifiée"); }

    le 28/01/2022 à 17h22

  • meriam

    meriam Admin

    Bonjour, votre dernier code est correct.

    le 31/01/2022 à 11h04

  • dupin.mathieu-47

    dupin.mathieu-47

    Bonjour, je ne comprends pas mon erreur:

    le 28/01/2022 à 17h21

  • meriam

    meriam Admin

    Bonjour, il faut supprimer le point-virgule aprés la condition de la structure if.

    le 31/01/2022 à 11h03

index.html
script.js
<!DOCTYPE HTML> <html> <head> <title>La structure if</title> <script src="script.js"></script> </head> <body> </body> </html>
var var1 = 5; var var2 = 6; var var3 = 4; /* Votre premiere condition ici */ /* Votre deuxième condition ici */