Subversion Repositories wimsdev

Rev

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

  1.  <b>Mathematical expression.</b>
  2.  (name: <span class="tt wims_code_words">algexp</span>, <span class="tt wims_code_words">litexp</span> and <span class="tt wims_code_words">formal</span>)
  3.  <p>
  4.  This is a mathematical expression that will be compared with the given correct
  5.  reply, according to different criteria of identification.
  6.  One may put several correct replies, separated by commas.
  7.  It is highly recommended that the good answer given is written by the programmer
  8.  in the mathematical form understood by computation software.
  9.  In particular, a letter other than <span class="tt">x,y,z</span> in front of a parenthesis will be interpreted as
  10.  a function: <span class="tt">u(x+1)</span> is the value of the function <span class="tt">u</span> at the point
  11.  <span class="tt">x+1</span>, while <span class="tt">(u+1)(x+1)</span> and <span class="tt">x (u+1)</span>
  12.  are polynomials in 2 variables <span class="tt">u</span> and <span class="tt">x</span>, and <span class="tt">u*(u+1) </span> is a polynomial in <span class="tt">u</span>.
  13. </p><p>
  14. For <span class="tt wims_code_words">algexp</span> (algebraic expression), there are some limited
  15. algebraic identifications for the comparison. For example, (x+1)(x-1) will
  16. not be accepted when the correct reply is x^2-1. Neither for sin(x)^2+cos(x)^2
  17. against 1. On the other hand, x-y*y and -y^2+x will be considered as the
  18. same.
  19. </p><p>
  20. Four <span class="tt wims_code_words">litexp</span> (literal expression), the reply will be compared litterally
  21.  with the given correct answer, with no algebraic simplification. For example,
  22.  x+y will not be identified with y+x, nor will 3/2 with 6/4. But 2x and 2*x
  23.  will be identified, and spaces will be collapsed before comparison. <p>
  24.  It is useful for forcing students to do expression manipulations.
  25. </p>
  26. !! TODO_lang en
  27. Il est possible de préciser des mots d'option permettant de spécifier l'analyse syntaxique
  28. (uniquement pour le type <span class="tt wims_code_words">litexp</span>
  29. et pour un polyôme en une variable à coefficients entiers).
  30. !let old=$wims_backslash_insmath
  31. !let wims_backslash_insmath=yes
  32. <ul>
  33.   <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 :
  34.    <ul>
  35.      <li>Chaque terme doit être simplifié : pas de \(3\times x\times x).</li>
  36.      <li>Les coefficients doivent être calculés : pas de \(3\times 2 \times x^2).</li>
  37.      <li>L'expression doit être réduite : pas de \(2x+5x^2+3x).</li>
  38.       <li>Pas de parenthèse.</li>
  39.       <li>Pas de symbole divisé.</li>
  40.       <li>Il n'est pas utile de fournir la bonne réponse développée : elle sera automatiquement construite à partir de l'expression fournie.
  41.           Cependant, vous pouvez le faire si vous désirez voir afficher une forme spéciale comme bonne réponse.</li>
  42.       <li>Les écritures \(x^0), \(x^1) ne sont pas acceptés.</li>
  43.       <li>Pour un monôme, la constante doit être placée avant la variable : \(x\times 12) n'est pas accepté pour \(12x).</li>
  44.      <li>Un message adapté est affiché en cas d'erreur d'écriture.</li>
  45.    </ul>
  46.  </li>
  47.  <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 :
  48.     <ul>
  49.       <li>Les formes non factorisées sont repérées : par exemple \(x^2+2x+1) pour \((x+1)^2).</li>
  50.       <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>
  51.       <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>
  52.      <li>Chaque facteur doit respecter les règles des expressions développées/réduites énoncées plus haut.</li>
  53.      <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>
  54.      <li>Chaque facteur doit être de contenu inversible dans \(\ZZ).</li>
  55.      <li>Un facteur égal à 1 est signalé comme inutile</li>
  56.      <li>Un seul facteur constant est accepté par défaut. \(2*3*(x+3)) sera refusé à la place de \(6(x+3)).</li>
  57.      <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>
  58.      <li>Il n'est pas utile de fournir la bonne réponse factorisée : elle sera automatiquement construite à partir de l'expression fournie.
  59.         Cependant, vous pouvez le faire si vous désirez voir afficher une forme spéciale comme bonne réponse.</li>
  60.      <li>Un message adapté est affiché en cas d'erreur d'écriture.</li>
  61.     </ul>
  62.  </li>
  63. </ul>
  64. !let wims_backslash_insmath=$old
  65. <p>
  66. The type <span class="tt wims_code_words">formal</span> (formal expression) is for exact numerical
  67. comparison. It is as the type <span class="tt wims_code_words">numeric</span>, except that no approximation
  68. is allowed.
  69. </p>
  70.