!set methtit=Réécrire une équation
!set methenv=ZZ QQ RR CC
!set methparmtype=parm equation, function, choice, function
!set methhelp=Vous pouvez utiliser cette méthode pour transformer une\
  équation existante en une équivalente, par un mélange d'addition\
  de termes, échange de côtés et multiplication par une constante non-nulle.

!if $wims_read_parm iswordof form check
  !goto $wims_read_parm
!endif

!exit
:form
Réécrire l'équation
!read deduc/methparm.phtml 1
$ en <br>
<input size="15" name="methparm2" value="$methparm2">
=
<input size="15" name="methparm4" value="$methparm4">
!set methremark=Votre nouvelle équation doit obligatoirement être\
équivalente à l'ancienne.
!exit
:check
!distribute items $methparmobj1 into data,left1,sign1,right1
sign2==
sign3==
!if $sign2 notsametext $sign1 and $sign3 notsametext $sign1
  :badequiv
  error=Votre nouvelle équation n'est pas équivalente à l'ancienne&nbsp;!
  !advance penalty
  !exit
!endif

check1=($left1) - ($right1)
check2=($methparm2) - ($methparm4)

!read deduc/sub/checkzero $check1\
	$check2
!distribute line $out into out1, out2
!read deduc/sub/_Simplify ($check1) / ($check2)
out3=$out
!if $out1=yes or $out2=yes
  !if $out1!=yes or $out2!=yes
    !goto badequiv
  !endif
!else
  out3=$[$out3]
  !if NaN isin $out3 or Inf isin $out3
    !goto badequiv
  !endif
!endif
methexp=Réécriture de \($left1 = $right1)

newobject1=$methparm2 = $methparm4
oldobject=1

!exit
