Subversion Repositories wimsdev

Rev

Rev 18205 | Blame | Compare with Previous | Last modification | View Log | RSS feed

  1. <b>Expression mathématique.</b>
  2.  (noms : <span class="tt wims_code_words">algexp</span>,
  3.  <span class="tt wims_code_words">litexp</span> et <span class="tt wims_code_words">formal</span>)
  4.  <p>
  5. Une expression mathématique est comparée à la bonne réponse
  6.  donnée selon différents critères d'identification.
  7. On peut mettre plusieurs bonnes réponses en les séparant par des virgules.
  8. Il est fortement conseillé que la bonne réponse donnée soit écrite par le programmeur
  9. sous la forme mathématique comprise par les logiciels de calcul.
  10. En particulier, une lettre autre que <span class="tt">x,y,z</span> devant une parenthèse sera interprétée comme
  11. une fonction : <span class="tt">u(x+1)</span> est la valeur de la fonction <span class="tt">u</span> au point
  12. <span class="tt">x+1</span>, alors que <span class="tt">(u+1)(x+1)</span> et <span class="tt">x(u+1)</span>
  13. sont des polynômes  en 2 variables <span class="tt">u</span> et <span class="tt">x</span>, et  <span class="tt">u*(u+1)</span> est un polynôme en <span class="tt">u</span>.
  14. </p><p>
  15. Pour <span class="tt wims_code_words">algexp</span> (expression algébrique), il y a des identifications
  16. limitées pour la comparaison. Par exemple, (x+1)(x-1) n'est pas accepté
  17.  quand la bonne réponse est x^2-1, sin(x)^2+cos(x)^2 non plus quand la bonne réponse est 1.
  18.  Par contre, x-y*y et -y^2+x sont considérés comme les mêmes.
  19.  Il est utile pour forcer les étudiants à faire les manipulations
  20.  d'expressions eux-mêmes.
  21. </p><p>
  22. Pour <span class="tt wims_code_words">litexp</span> (expression littérale), la comparaison est littérale
  23. sans aucune simplification algébrique. Par
  24. exemple, x+y n'est pas identifié à y+x, ni 3/2 avec 6/4. Mais 2x et 2*x
  25.  sont identifiés et les espaces sont enlevés avant comparaison.
  26.  A utiliser avec beaucoup de précaution.
  27.  </p>
  28. Il est possible de préciser des mots d'option permettant de spécifier l'analyse syntaxique
  29. (uniquement pour le type <span class="tt wims_code_words">litexp</span>
  30. et pour un polyôme en une variable à coefficients entiers).
  31. !let old=$wims_backslash_insmath
  32. !let wims_backslash_insmath=yes
  33. <ul>
  34.   <li><span class="tt wims_code_words">polexpand</span> Il s'agit de tester une réponse qui est un polynôme de \(\ZZ[X]) sous forme développée. Avec le comportement suivant :
  35.    <ul>
  36.      <li>Chaque terme doit être simplifié : pas de \(3\times x\times x).</li>
  37.      <li>Les coefficients doivent être calculés : pas de \(3\times 2 \times x^2).</li>
  38.      <li>L'expression doit être réduite : pas de \(2x+5x^2+3x).</li>
  39.       <li>Pas de parenthèse.</li>
  40.       <li>Pas de symbole divisé.</li>
  41.       <li>Il n'est pas utile de fournir la bonne réponse développée : elle sera automatiquement construite à partir de l'expression fournie.
  42.           Cependant, vous pouvez le faire si vous désirez voir afficher une forme spéciale comme bonne réponse.</li>
  43.       <li>Les écritures \(x^0), \(x^1) ne sont pas acceptés.</li>
  44.       <li>Pour un monôme, la constante doit être placée avant la variable : \(x\times 12) n'est pas accepté pour \(12x).</li>
  45.      <li>Un message adapté est affiché en cas d'erreur d'écriture.</li>
  46.    </ul>
  47.  </li>
  48.  <li><span class="tt wims_code_words">polfactor</span> Il s'agit de tester une réponse qui est un polynôme de \(\ZZ[X]) sous forme factorisée. Avec le comportement suivant :
  49.     <ul>
  50.       <li>Les formes non factorisées sont repérées : par exemple \(x^2+2x+1) pour \((x+1)^2).</li>
  51.       <li>Tolérence au niveau du signe - : par exemple les réponses \((x+1)(2x+3)), \(-(-x-1)(2x+3)), \((-x-1)(-2x-3)) et \(-(x+1)(-2x-3)) sont acceptées.</li>
  52.       <li>Les expressions qui ne sont pas des produits sont repérées et l'opération qui pose problème est mise en relief.</li>
  53.      <li>Chaque facteur doit respecter les règles des expressions développées/réduites énoncées plus haut.</li>
  54.      <li>Repérage de répétition de facteurs proportionnels : par exemple \((x-2)(2-x)) sera refusé à la place de \(-(x-2)^2).</li>
  55.      <li>Chaque facteur doit être de contenu inversible dans \(\ZZ).</li>
  56.      <li>Un facteur égal à 1 est signalé comme inutile</li>
  57.      <li>Un seul facteur constant est accepté par défaut. \(2*3*(x+3)) sera refusé à la place de \(6(x+3)).</li>
  58.      <li>En cas d'utilisation du mot d'option <span class="wims_code_words">factorcontent</span>, le contenu du polynôme doit lui aussi être factorisé. \(6*(x+3)) sera refusé à la place de \(2*3*(x+3)).</li>
  59.      <li>Il n'est pas utile de fournir la bonne réponse factorisée : elle sera automatiquement construite à partir de l'expression fournie.
  60.         Cependant, vous pouvez le faire si vous désirez voir afficher une forme spéciale comme bonne réponse.</li>
  61.      <li>Un message adapté est affiché en cas d'erreur d'écriture.</li>
  62.     </ul>
  63.  </li>
  64. </ul>
  65. !let wims_backslash_insmath=$old
  66. <p>
  67. Le type <span class="tt wims_code_words">formal</span> (expression formelle) permet des comparaisons
  68. numériques exactes. Tout ce qui est égal exactement à la bonne réponse est
  69. accepté, mais l'approximation n'est pas admise.
  70. </p>
  71.