Subversion Repositories wimsdev

Rev

Rev 16120 | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
20 reyssat 1
!set methtit2=Multiplier une inégalité par un nombre non-nul
2
!set methtit=Multiplier une inégalité par un nombre
3
!set methenv=ZZ QQ RR
4
!set methparmtype=number,parm inequality
5
!set methhelp=Cette méthode transforme une inégalité du style \(A > B)\
16209 bpr 6
  en l'inégalité équivalente \(A*n > B*n) (ou \(A*n < B*n)), où \(n) est un nombre\
7
  qui doit être non-nul pour guarantir l'équivalence entre l'inégalité\
8
  de départ et celle transformée.
20 reyssat 9
 
10
!if $wims_read_parm iswordof form check
16117 bpr 11
  !goto $wims_read_parm
20 reyssat 12
!endif
13
 
14
!exit
15
:form
16117 bpr 16
Multiplier l'inégalité
17
!read deduc/methparm.phtml 2
16120 bpr 18
$ par le nombre
16117 bpr 19
!read deduc/methparm.phtml 1,10
20 reyssat 20
 
21
!exit
22
:check
16117 bpr 23
!distribute items $methparmobj2 into data,left,sign,right
24
!if $methparm1=0
20 reyssat 25
  error=Multiplier une inégalité par 0 vous fait perdre de l'information, et \
26
   est donc interdit.
27
  !advance penalty
28
  !exit
16117 bpr 29
!endif
30
methexp=Multiplier \($left $sign $right) par \($methparm1)
20 reyssat 31
 
16117 bpr 32
!read deduc/sub/simplify ($left) * ($methparm1)\
20 reyssat 33
	($right) * ($methparm1)
16117 bpr 34
!distribute lines $out into newleft,newright
35
!if $newleft=$empty or $newright=$empty
20 reyssat 36
  error=bad_data
16117 bpr 37
 !exit
38
!endif
39
!if $methparm1<0
20 reyssat 40
  newsign=!translate internal <> to >< in $sign
16117 bpr 41
!else
20 reyssat 42
  newsign=$sign
16117 bpr 43
!endif
44
newobject2=$newleft $newsign $newright
45
oldobject=2
20 reyssat 46
 
16117 bpr 47
contextlist=$ct_Onlywhen on multiplie par un nombre non-nul,\
20 reyssat 48
	$ct_Onlywhen on multiplie par un nombre positif,\
49
	$ct_Onlywhen les deux côtés sont positifs,\
50
	$ct_Onlywhen les deux côtés sont de même signe,\
51
	$ct_Onlywhen l'inégalité est stricte
16117 bpr 52
 
53
badsign=!translate internal <> to >< in $newsign
54
resultlist=$newobject2,\
20 reyssat 55
	$newright $newsign $newleft,\
56
	$newleft $badsign $newright
57
!exit