Mélanger l'ordre des questions

Accueil Forums Programmation WIMS Programmation d’exercices OEF Mélanger l'ordre des questions

Vous lisez 3 fils de discussion
  • Auteur
    Messages
    • #3119
      declieu69
      Participant
      Up
      0
      Down
      ::

      Bonjour.

      Je souhaite, pour un exercice, mélanger l’ordre des questions.
      Pour cela, j’ai pensé à créer un liste l1 avec les questions (et un champs embed pour chacune d’entre elles), puis créer une liste l2=shuffle(l1). Mais quand j’appelle \l2 dans l’énoncé, les champs n’apparaissent pas : j’ai bla bla 2 : \embed(r2); bla bla 1 : \embed(r1) ; bla bla 3 : \embed(r3) : ok pour le mélange, mais pas de champs pour entrer les réponses dans l’énoncé (les champs apparaissent bien sûr à la fin et dans l’ordre reply, reply 2 et reply 3).
      Je n’ai pas non plus réussi à utiliser la commande shuffle dans le statement.
      Bref, il doit bien y avoir une solution simple à ce que je souhaite, mais je ne vois pas.

      Merci d’avance à l’attention que vous prêterez à mon problème.

      • Ce sujet a été modifié le il y a 8 années et 5 mois par declieu69.

      Thomas Charon
      Lycée Lumière à Lyon

    • #3123
      Julien
      Modérateur
      Up
      0
      Down
      ::

      Bonjour,

      J’ai ce bout de code qui traîne. Après tu peux aller regarder dans les modèles QCM à la suite et passer en mode brut. Tu trouveras du code plus élaborer.

      voili voilou

      
      \title{Titre de l'exo}
      \language{fr}
      \author{}
      \email{}
      
      #4 pour 4 questions à la suite dans le désordre
      \text{n=shuffle(4)}
      
      #autant de ligne que de quetions en adpatant reply\n[_____]
      \matrix{\STEP=reply\n[1]
      reply\n[2]
      reply\n[3]
      reply\n[4]}
      
      \steps{\STEP}
      
      #tu peux ajouter des questions en rajoutant des lignes
      \matrix{qr=Question1 ????, reponse1
      Question2 avec une virgule \(,) <= Une erreur classique ????, reponse2
      Question3 ????, reponse3
      Question4 ????, reponse4
      }
      
      \statement{
      \n <br />
      \for{aa=1 to 4}{
      \if{\step=\aa}{
      \qr[\n[\step];1] \embed{reply\n[\step],10}
      }
      }
      }
      
      #Il faut autant de ligne que de questions en adaptant \qr[____;2]
      \answer{}{\qr[1;2]}{type=nocase}{option=nonstop}
      \answer{}{\qr[2;2]}{type=nocase}{option=nonstop}
      \answer{}{\qr[3;2]}{type=nocase}{option=nonstop}
      \answer{}{\qr[4;2]}{type=nocase}{option=nonstop}
      
      
    • #3124
      declieu69
      Participant
      Up
      0
      Down
      ::

      C’est ce que j’ai finalement mis en place.

      Merci

      Thomas Charon
      Lycée Lumière à Lyon

    • #3125
      bernadette
      Maître des clés
      Up
      0
      Down
      ::

      Dans la solution de Julien, il me semble (non testé) que la boucle dans le statement est inutile. Et autant utiliser la variable \STEP.

      \statement{
      \qr[\n[\step];1] \embed{\STEP[\step;],10}
      }

Vous lisez 3 fils de discussion
  • Vous devez être connecté pour répondre à ce sujet.