Exercice 12/16

Soit la variable var1 déjà déclarée et qui contient la valeur true ou la valeur false.

Dans le fichier "script.js" :

  • écrivez une structure ternaire;
  • si var1 est true affectez la chaîne "C'est vrai" à result;
  • si var1 est false affectez la chaîne "C'est faux" à result;
  • affichez result avec alert();
  • cliquez sur "Soumettre ma réponse".

Leçon 12/16

Vous venez de voir :

  • la structure conditionnelle if elseif else;
  • le switch;

Le dernier type de structure conditionnelle sont les ternaires. Leur avantage est d'être simple à écrire mais c'est au détriment de la lisibilité.

Une structure ternaire est comme une structure if else mais écrite sur une seule ligne.

Exemple :

var permis = confirm("Avez-vous le permis de conduire ?");
var resultat;
if (permis) // confirm() renvoi un booléen, donc on peut directement tester "permis", pas besoin de mettre "permis == true"
{
    resultat = "Vous pouvez conduire";
}
else
{
    resultat = "Vous ne pouvez pas conduire";
}

Equivalent ternaire :

var permis = confirm("Avez-vous le permis de conduire ?");
var resultat = permis ? "Vous pouvez conduire" : "Vous ne pouvez pas conduire";

Comment ça marche ?

  • la variable resultat récupère le résultat de la ternaire;
  • la variable permis est testée par la ternaire;
  • suivie par ?;
  • suivi par une première valeur puis : et une seconde valeur;

Si permis est vérifiée (évaluée à true) alors la première valeur sera retournée.
Si permis n'est pas vérifiée (évaluée à false) alors la seconde valeur sera retournée.

Commentaires les mieux notés

174 Commentaires

  • veroniquedouce-83

    veroniquedouce-83

    Bonjour, je n'arrive pas à soumettre ma réponse. Merci

    le 26/09/2022 à 12h18

  • Patricio M

    Patricio M Admin

    Déconnectes toi et essaye à nouveau

    le 26/09/2022 à 12h36

  • stannir

    stannir

    var var1 = true; var result; result = var1 ? "C'est vrai" : "C'est faux";

    le 16/05/2022 à 10h32

  • stannir

    stannir

    var var1 = true; var result; result = var1 ? "C'est vrai" : "C'est faux";

    le 16/05/2022 à 10h32

  • aoudeche.amina1-26

    aoudeche.amina1-26

    Bonjour, je n’arrive toujours pas à trouver mon erreur

    le 24/03/2022 à 16h10

  • meriam

    meriam Admin

    Bonjour, au niveau du message default, ajoutez un espace aprés les deux points ==> alert("La valeur est forcément zéro : "+number);

    le 28/03/2022 à 14h33

  • marie.annick.lataste-46

    marie.annick.lataste-46

    bonjour, j'ai vérifié dans tous les sens, ça ne valide pas: var var1 = true; var result; result = var1 ? "c'est vrai" : "c'est faux"; alert(result);

    le 17/12/2021 à 16h08

  • meriam

    meriam Admin

    Bonsoir, la lettre c de c'est vrai et c'est faux doit être en majuscule comme montré dans l'énoncé?

    le 19/12/2021 à 23h00

  • emanuela.rossetti-92

    emanuela.rossetti-92

    Si ca peut aider quelqu'un var var1 = true; var result; result = var1 ? "C'est vrai" : "C'est faux"; alert(result);

    le 27/10/2021 à 12h13

  • meriam

    meriam Admin

    Bonjour, votre code fonctionne correctement.

    le 27/10/2021 à 13h36

  • nad.sgh-26

    nad.sgh-26

    var var1 = true ; var result=var1 ?; "C'est vrai":"C'est faux"; alert(result);

    le 21/10/2021 à 14h07

  • meriam

    meriam Admin

    Bonjour, votre dernier code est correct.

    le 22/10/2021 à 15h54

  • abdo7219

    abdo7219

    /* Vous pouvez modifier la valeur de la variable pour vos tests */ var var1 = true; var result; /* Votre ternaire */ result = var1 ?"C'est vrai" : "C'est faux"/* ici */; alert(result);

    le 03/10/2021 à 10h21

  • meriam

    meriam Admin

    Bonjour, votre code est correct.

    le 04/10/2021 à 11h47

  • meriam

    meriam Admin

    N'hésitez pas à poser des questions si vous trouvez des problèmes dans les exercices qui suivent. Bon travail.

    le 04/10/2021 à 11h47

  • boucharlatmargaux-96

    boucharlatmargaux-96

    vraie frère

    le 21/06/2021 à 13h26

  • boucharlatmargaux-96

    boucharlatmargaux-96

    vraie frère

    le 21/06/2021 à 13h26

  • benmoussamohsen-16

    benmoussamohsen-16

    var var1 = true; var result; result = var1 ? "C'est vrai" : " C'est faux"; alert(result);

    le 14/06/2021 à 13h18

  • meriam

    meriam Admin

    Bonjour, il faut supprimer l'espace aprés les guillemets du message "C'est faux".

    le 14/06/2021 à 16h20

  • millessaborts-90

    millessaborts-90

    ce serait bien que vous faissiez faire vos exercices à des gens qui savent coder, pour voir comment celui-ci se passe (rien que le nombre de commentaires laissé devrait vous mettre la puce à l'oreille sur la qualité de la correction)

    le 10/05/2021 à 20h11

  • meriam

    meriam Admin

    Bonsoir, vous devez respecter les messages demandés : pour le message "c'est faux" (mettez la lettre s en majuscule)

    le 10/05/2021 à 23h18

  • youdjine

    youdjine

    franchement je mettrai toujours le bon code a chaque fois que ça me prendra la tête pour trouver le resulta juste pour la solidarité des debutant comme moi . var var1 = true ; var result; /* Votre ternaire */ result = var1 ? "C'est vrai" : "C'est faux"; alert(result);

    le 23/03/2021 à 15h30

  • youdjine

    youdjine

    franchement je mettrai toujours le bon code a chaque fois que ça me prendra latte pour trouver le resulta juste pour la solidarité des debutant comme moi . var var1 = true ; var result; /* Votre ternaire */ result = var1 ? "C'est vrai" : "C'est faux"; alert(result);

    le 23/03/2021 à 15h28

  • tbailly-86

    tbailly-86

    /* Vous pouvez modifier la valeur de la variable pour vos tests */ var var1 = 1 == '1'; var result; /* Votre ternaire */ result = var1 ? "C'est vrais" : "C'est faut" ;/* ici */ alert(result);

    le 17/03/2021 à 08h00

  • meriam

    meriam Admin

    Bonjour, la valeur de la variable var1 et var2 doit contenir true ou false donc soit var var1 = true soit var var1 = false

    le 17/03/2021 à 11h45

index.html
script.js
<!DOCTYPE HTML> <html> <head> <title>La structure ternaire</title> <script src="script.js"></script> </head> <body> </body> </html>
/* Vous pouvez modifier la valeur de la variable pour vos tests */ var var1 = true; var result; /* Votre ternaire */ result = /* ici */; alert(result);