Partage
  • Partager sur Facebook
  • Partager sur Twitter

Un problème avec les conditions dites ternaires:

Sujet résolu
    30 décembre 2005 à 19:33:12

    Bonjour, en lisant le cours de C en particulier, le chapitre sur les conditions, j'ai un problème de compréhension qui me gène assez. Lorsque l'on arrive à la partie sur les ternaires, on nous propose l'exemple suivant:

    if (majeur)
    age = 18;
    else
    age = 17;

    Or là, je ne saisis plus rien du tout. Le but de cette fonction par exemple, j'ai l'impression d'avoir un début de booléen mais, je n'arrive pas du tout à en voir la finalité. Le but est si j'ai bien compris, de remplacer le 0 à quoi on associe le "faux" par 17 dans le cas présent, mais d'une part je n'en comprends pas l'utilité, la finalité, et d'autre part, mais cela vient à coup sur de moi, je ne comprends pas du tout ce booléen: je n'ai pas l'impression que cela correspond à ce qui est expliqué précédemment dans le cours.

    Bref, si quelqu'un pouvait éclairer ma lanterne sur ce sujet et si possible, me proposer un code entier présentant cela de manière moins concise pour que je puisse mieux comprendre le tout. Merci d'avance et désolé si ce message fait un peu tache sur le forum...
    • Partager sur Facebook
    • Partager sur Twitter
    Anonyme
      30 décembre 2005 à 19:46:48

      Dans cet exemple, majeur est un booléen (enfin, un int en C) qui vaut faux (0) ou vrai (1). Ensuite, si majeur est vrai, on donne 18 à la valeur âge. Si majeur est faux, on lui donne 17.

      Ce qui est un peu bizarre et qui peut te troubler c'est que déja c'est un code un peu inutile, mais surtout on done une valeur à âge qui varie en fonction de si on est majeur, en général on fait l'inverse par exemple :
      if(age >= 18) majeur = 1;
      else majeur = 0;
      qui est un code plus logique et utile, mais on pourrait aussi mettre majeur = (age >= 18); ainsi majuer vaudra 1 si la condition est vraie, 0 sinon.

      ;)
      • Partager sur Facebook
      • Partager sur Twitter
        30 décembre 2005 à 20:31:17

        Donc, ce n'est pas quelque chose de vital pour comprendre le C si j'ai bien compris.
        Ton exemple est plus clair merci bien.
        • Partager sur Facebook
        • Partager sur Twitter
          30 décembre 2005 à 21:31:21

          cet exemple servait juste à introduire les conditions ternaires.

          Montrer une condition "if" et la même condition mais ternaire :p
          • Partager sur Facebook
          • Partager sur Twitter
            30 décembre 2005 à 21:52:56

            Ok, ben c'est bon maintenant, j'ai réfléchi un peu et j'ai trouvé une manière d'inclure ce bout de programme qui me perturbait, merci encore ^^.
            • Partager sur Facebook
            • Partager sur Twitter

            Un problème avec les conditions dites ternaires:

            × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
            × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
            • Editeur
            • Markdown