Rev 16204 | Details | Compare with Previous | Last modification | View Log | RSS feed
Rev | Author | Line No. | Line |
---|---|---|---|
20 | reyssat | 1 | !default Askcontext=0 |
2 | !default Askresult=0 |
||
3 | |||
4 | exo=!listintersect $exo and $exolist |
||
5 | !default exo=$defaultlist |
||
6 | wims_intro_parm=$exo |
||
7 | !default exo=$exolist |
||
8 | |||
9 | thisexo=!randitem $exo |
||
10 | deffile=def/$thisexo.def |
||
11 | |||
12 | givehint =!item $qcmlevel of 1,1,1,1,1,1,0,0,0 |
||
13 | presentsol =!item $qcmlevel of 2,2,1,1,0,0,0,0,0 |
||
14 | scorepower =!item $qcmlevel of 1,1.1,1.2, 1.4,1.6,1.8, 2.1,2.4,2.7 |
||
15 | tolerance =!item $qcmlevel of 6,4,3,2,2,1,1,0,0 |
||
16 | cutstep =!item $qcmlevel of 50,40,35, 30,25,20, 15,10,5 |
||
17 | ask =!item $qcmlevel of 2,3,3,4,4,5,6,7,8 |
||
18 | ecoeff =!item $qcmlevel of 0,0.2,0.3, 0.4,0.5,0.6, 0.8,0.9,1 |
||
19 | pcoeff =!item $qcmlevel of 1,1.2,1.3, 1.5,1.7,2, 2.3,2.6,3 |
||
20 | scoremin =!item $qcmlevel of 0,0,0.05, 0.1,0.15,0.2, 0.25,0.3,0.35 |
||
21 | |||
22 | !distribute item 1,1,1,1 into activecase,casecnt,currstep,ustep |
||
23 | !distribute item 0,0,0,0 into laststep,gotostep,penalty,oldpenalty |
||
24 | !reset vsavelist, methparmcnt, statusline, statusLine, solution, hint, earlyscore,\ |
||
25 | m_context,m_goal,m_equivalence,m_newobject,m_options,m_minsteps,\ |
||
26 | allcases,stepcases,\ |
||
27 | exo_has, stepcounting |
||
28 | m_environ=QQ |
||
29 | wims_module_log=$cmd: $thisexo level=$qcmlevel |
||
30 | |||
31 | !read $deffile |
||
32 | |||
33 | methparmlimit=32 |
||
34 | !default m_minsteps=1 |
||
35 | cutstep=$[min($maxstep,$m_minsteps+$tolerance+$cutstep)] |
||
36 | !for s in help,hint,solution |
||
16204 | bpr | 37 | !if $($s)!=$empty |
38 | exo_has=$exo_has $s |
||
39 | !endif |
||
20 | reyssat | 40 | !next s |
41 | |||
42 | m_options=!items2words $m_options |
||
43 | !for t in context,result |
||
16204 | bpr | 44 | !if $(Ask$t)=0 and ask$t iswordof $m_options |
45 | Ask$t=1 |
||
46 | !endif |
||
47 | !if $(Ask$t)>0 |
||
48 | ask$t=$ask |
||
49 | !else |
||
50 | ask$t=0 |
||
51 | !endif |
||
20 | reyssat | 52 | !next t |
53 | |||
54 | !if $m_environ iswordof ZZ QQ and nofloat notwordof $m_options |
||
16204 | bpr | 55 | m_options=$m_options nofloat |
20 | reyssat | 56 | !endif |
57 | |||
58 | !if fixedgoal iswordof $m_options |
||
16204 | bpr | 59 | m_goal=!translate internal $ $ to $\ |
20 | reyssat | 60 | $ in $m_goal |
61 | !endif |
||
62 | |||
63 | !read oef/valsave.proc |
||
64 | !read deduc/objects.combine |
||
65 | !read deduc/objects.put 0 |
||
66 | variables=!varlist $objects |
||
67 | v=!items2words $m_variables |
||
68 | v=!words2items $v |
||
69 | variables=!listunion $v and $variables |
||
70 | |||
71 | !default methparmcnt=$methparmlimit |
||
72 | !read deduc/methreset |
||
73 | |||
74 | mtl=!items2words $m_methods |
||
75 | mthlist=!words2items $mtl |
||
76 | mtl=!words2lines $mtl |
||
17046 | bpr | 77 | dictionary=scripts/deduc/meth/index.$modu_lang |
20 | reyssat | 78 | translator_unknown=leave |
79 | translator_switch=leavelines |
||
80 | mtitles=!exec translator $mtl |
||
81 | mtitles=!lines2items $mtitles |
||
82 | |||
83 | question_url= |
||
84 | status=waiting |
||
85 | !default conditioncnt=0 |