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 |