Forums - Adopte un VTP - Variables et conditions

Ce sujet a 3 réponses, 3 participants et a été mis à jour par   CHRISTINE HEUZE, il y a 10 mois et 3 semaines. This post has been viewed 350 times

  • CHRISTINE HEUZE  | Posté le 23 octobre 2019 à 13 h 09 min

    Bonjour à tous et à toutes,

    Je débute tout juste avec les Variables et ça n’est pas gagné !
    Voici ma problématique :
    Je voudrais faire travailler mes élèves sur les unités de conversion…
    Par exemple : vous avez X (première variable sur un nombre) ml ou cl…(deuxième variable sur une unité de départ) à convertir en L (unité qui reste fixe)

    Le résultat attendu dépend donc des deux premiers éléments avec :
    un / 1000 si l’unité de départ est en ml
    un / 100 si l’unité de départ est en cl etc…

    Et bien, je n’arrive pas à renseigner mon bloc condition…
    Je suis preneuse de toutes vos suggestions et vous remercie par avance !
    Christine

    Nicolas ROSSARD  | Posté le 25 octobre 2019 à 6 h 31 min

    Bonjour Christine,

    Tu peux me préciser comment tu veux que fonctionne ton exercice ?

    Si le but est d’afficher un formulaire avec une question du style « Combien de litres représentent X mL ou cL ? » Dans ce cas, la quantité et l’échelle n’ont pas forcément besoin d’être une variable. Tu écris les questions en « dur » et tu compares le résultat avec la bonne réponse.

    Si l’objectif est quand même de manipuler les variables, tu peux utiliser les variables comme suit :
    volume == X, avec X une valeur qui correspond à la quantité
    echelle == "cL" ou echelle == "mL"
    Ces 2 variables, tu les déclares dans un même bloc Variables.
    Pour la condition, tu fais :
    echelle == "cL" -> dans ce cas tu auras une sortie qui correspond au fait que ton échelle soit en cL, du coup derrière tu peux faire /100 dans un autre bloc Variables.
    – Si tu n’as que 2 valeurs possibles pour l’échelle, tu n’as pas besoin de créer une 2e ligne dans le bloc Conditions puisque soit l’échelle est en cL soit c’est obligatoirement mL.

    Dernière précision, si tu manipules plusieurs éléments en même temps, tu peux préciser ça dans le nom de ta variable. Par exemple :
    volumeA == 250
    echelleA == "mL"
    volumeB == 8000
    echelleB == "cL"

    Comme ça tu sais quelle échelle est reliée à quelle quantité.

    En espérant t’avoir éclairée sur le sujet.

    Bien à toi,

    Yannick Audéoud  | Posté le 25 octobre 2019 à 8 h 21 min

    Bonjour,

    Je pense effectivement qu’écrire les questions et les réponses directement dans des blocs Formulaire et Variables sans aucun calcul est probablement le plus simple. Vous pouvez ainsi copier ces 2 blocs pour chaque question.

    Le seul cas où il sera vraiment nécessaire de faire un calcul, c’est si vous ne pouvez pas connaître vous-même la réponse à l’avance au moment de concevoir votre exercice. C’est le cas par exemple si vous générez vos questions aléatoirement en utilisant la fonction rand.

    —-

    J’ajoute une petite précision liée aux divisions avec les variables, qui a des chances d’être importante dans le cas ici présent si vous partez sur une solution à base de variables.

    Lorsqu’on divise un entier (une variable de type « nombre entier ») par un entier, le résultat sera forcément un entier (la partie entière du résultat de la division), même si le résultat réel devrait être un nombre décimal. C’est un comportement normal, et même souhaitable dans de plus nombreux cas qu’on ne le pense.

    Pour obtenir un résultat décimal exact, il faut qu’au moins l’un des deux nombres de la division soit un nombre décimal. Si vous demandez à l’utilisateur de rentrer un nombre décimal dans son un Formulaire, la variable résultant de ce Formulaire sera bien un nombre décimal, même si l’utilisateur écrit un nombre entier.

    Cordialement,
    Yannick

    CHRISTINE HEUZE  | Posté le 29 novembre 2019 à 15 h 58 min

    Bonsoir à vous deux !

    Avec un grand retard (toutes mes excuses !), je vous remercie pour ces réponses qui m’auront permis de créer toute une série de calculs de doses à destination de mes étudiants !
    Vous démontrez, une nouvelle fois, et avec vélocité, l’intérêt que vous portez à vos utilisateurs. Merci !
    Christine