Champ reply ignoré par Wims

Accueil Forums Programmation WIMS Programmation d’exercices OEF Champ reply ignoré par Wims

Vous lisez 6 fils de discussion
  • Auteur
    Messages
    • #8305
      Hilaire Fernandes
      Participant
      Up
      0
      Down
      ::

      Dans l’exercice ci-dessous, le 4e champ reply est aléatoirement ignoré par wims, le champ de saisie apparait alors en bas comme dans tout exercice ou ce champ ne serait pas précisé,

      https://pasteboard.co/NL8EGbWWMfdK.png

      
      \title{Question 03}
      \language{fr}
      \author{Hilaire Fernandes}
      \email{hilaire.fernandes@edu.ge.ch}
      
      :a
      :monôme x
      \integer{ d1xa = randint(2..4) }
      \integer{ d2xa = \d1xa * randint(2..4) }
      \text{ c1xa = randint(2..5) / \d1xa }
      \text{ c2xa = random(-5, -4, -3, -2, -1, 1, 2, 3, 4, 5) / \d2xa }
      :monôme y
      \integer{ dya = randint(2..9) }
      \text{ c1ya = random(-1, 1) / \dya }
      \text{ c2ya = random(-1, 1) / \dya }
      :
      \text{ QuestionA = \c1xa * x + \c1ya * y + \c2xa * x + \c2ya * y}
      \text{ ReponseA = pari(\QuestionA) }
      
      :b
      \integer {c1b = randint(2..4) }
      \integer {c2b = randint(2..5) }
      \integer {c3b = randint(2..5) }
      \integer {p1b = randint(2..4) }
      \integer {p2b = randint(2..4) }
      \text{ QuestionB = (\c1b * a^\p1b)^\p2b + \c2b * a^\p1b * \c3b * a ^\p2b }
      \text{ ReponseB = pari(\QuestionB) }
      
      :c
      \integer {c1c = randint(1..9) }
      \integer {c2c = randint(1..9) }
      \integer {c3c = randint(1..9) }
      \integer {c4c = randint(1..9) }
      \text{ QuestionC = (\c1c * x - \c2c) * (-\c3c + \c4c * x) }
      \text{ ReponseC = pari(\QuestionC) }
      
      :d
      \integer {c1d = randint(2..7) }
      \integer {c2d = randint(-5, -4, -3, -2, -1, 1, 2, 3, 4, 5) }
      \integer {c3d = randint(-5, -4, -3, -2, -1, 1, 2, 3, 4, 5) }
      \text {oped = random(+, -) }
      \text{ QuestionD = (\c1d * y + \c2d)^2 \oped (\c1d * y + \c3d) * (\c1d * y - \c3d) }
      \text{ ReponseD = pari(\QuestionD) }
      
      \statement{Effectue puis réduis si nécessaire les expressions littérales suivantes.
      <br>
      <div class="spacer">
      <b>a.</b> \( \QuestionA \) = \embed{ reply1, 6}
      </div>
      
      <div class="spacer">
      <b>b.</b> \( \QuestionB \) = \embed{ reply2, 12}
      </div>
      
      <div class="spacer">
      <b>c.</b> \( \QuestionC \) = \embed{ reply3, 12}
      </div>
      
      <div class="spacer">
      <b>d.</b> \( \QuestionD \) = \embed{ reply4, 12}
      </div>
      }
      
      \answer{Réponse a.}{ \ReponseA } { type=algexp }
      \answer{Réponse b.}{ \ReponseB } { type=litexp } {option=polexpand}
      \answer{Réponse c.}{ \ReponseC } { type=litexp } {option=polexpand}
      \answer{Réponse d.}{ \ReponseD } { type=litexp } {option=polexpand}
      
      \solution{
      <b>a.</b> \( \ReponseA \)
      <br>
      <b>b.</b> \( \ReponseB \)
      <br>
      <b>c.</b> \( \ReponseC \)
      <br>
      <b>d.</b> \( \ReponseD \)
      }
      
    • #8311
      Hilaire Fernandes
      Participant
      Up
      0
      Down
      ::

      Après investigation, Pari ne parvient pas à interpréter ce genre de formule, il retourne une chaine de caractères vide. Le double – semble être la source du problème :

      (5 * y + 4)^2 – (5 * y + -4) * (5 * y – -4)

      Une idée ?

    • #8312
      Hilaire Fernandes
      Participant
      Up
      0
      Down
      ::

      Lorsque dans l’outil Wims, j’exécute le script Pai/GAP, je saisie

      f(y)=(5 * y + 4)^2 – (5 * y + -4) * (5 * y – -4)

      Pari semble content.

      (y)->(5*y+4)^2(5*y+-4)*(5*y-4)

       

      Que fait donc la commande Pari de Wims ?

    • #8321
      Hilaire Fernandes
      Participant
      Up
      0
      Down
      ::

      Je tente une exécution par l’intermédiaire d’une commande wims(exec mais cela produit le même dysfonctionnement:

      \integer {c1d = randint(2..7) }
      \integer {c2d = randint(-5, -4, -3, -2, -1, 1, 2, 3, 4, 5) }
      \integer { c3d = -7 }
      \text {oped = random(+,-) }
      \text{ QuestionD = (\c1d * y + \c2d)^2 \oped (\c1d * y + \c3d) * (\c1d * y – \c3d) }
      \text{ ReponseD = wims(exec pari \QuestionD) }

      Les expression avec double moins (- -) ne sont pas interprétées !

      Par exemple la commande pari((5 * y + 4)^2 – (5 * y + -4) * (5 * y – –4)) retourne une chaîne de caractère vide !

      Je peux traiter le cas à la main mais cela rendra le code inutilement compliqué.

      Est-ce un bug confirmé ? Au quel cas j’ouvre un ticket.

      Une idée pour une solution alternative ?

      Merci

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

      exec pari fait la même chose que pari.

      Rajoutez des parenthèses.

      Si j’execute dans pari directement (vous pouvez essayer à partir de l’outil direc exec (entrer direct dans le moteur de recherche), on a la réponse

      parisizemax = 4000006144, primelimit = 1048576, nbthreads = 8
      ? 5–6
      ***   syntax error, unexpected –, expecting end of file: 5–6
      ***

      Bernadette

    • #8336
      Hilaire Fernandes
      Participant
      Up
      0
      Down
      ::

      Je ne comprends pas trop ton message. Pari ne sait pas faire de soustraction ? Où est ce un caractère non reconnu ?

      Je peux ajouter des parenthèses dans la seule expression envoyée à Pari, et ne pas les mettre dans celle affichée. Ça va rendre le code inélégant car il faudra dupliquer l’expression mais ça devrait fonctionner.

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

      Pari n’accepte par 4– 5 mais 4-(-5). (deux signes – successifs)

      Bernadette

       

      • #8348
        Hilaire Fernandes
        Participant
        Up
        0
        Down
        ::

        Oui c’est un peu dommage, j’imagine source de difficulté pour les moins motivés.

        J’ai donc dédoublé l’expression : une avec les parenthèses supplémentaires pour que Pari puisse l’évaluer et une autre sans les parenthèses supplémentaires pour affichage. En effet, la retranscription pour l’affichage, avec \( \), fonctionne parfaitement avec le double moins, c’est correctement retranscrit en +.

        Je suis quand même extrêmement surpris que cela pose problème à Pari.

        Ne serait-ce pas un paramètre de Pari ?

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