Subversion Repositories wimsdev

Rev

Rev 7210 | Rev 16117 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 7210 Rev 16113
Line 17... Line 17...
17
wims_print_precision=$print_precision
17
wims_print_precision=$print_precision
18
maxima_precision=$print_precision
18
maxima_precision=$print_precision
19
!default insplot_set=size 0.6,0.6
19
!default insplot_set=size 0.6,0.6
20
 
20
 
21
!if $cmd=help
21
!if $cmd=help
22
 !set module_title=$title
22
  !set module_title=$title
23
 !set module_author=$author
23
  !set module_author=$author
24
 !set module_address=$email
24
  !set module_address=$email
25
 !exit
25
  !exit
26
!endif
26
!endif
27
 
27
 
28
!read Exindex
28
!read Exindex
29
exocnt=!itemcnt $exolist
29
exocnt=!itemcnt $exolist
30
!bound qnum between integer 1 and $exocnt default 1
30
!bound qnum between integer 1 and $exocnt default 1
31
!bound qcmlevel between integer 1 and 9 default 3
31
!bound qcmlevel between integer 1 and 9 default 3
32
!bound random within 0,1 default 1
32
!bound random within 0,1 default 1
33
!default format=html
33
!default format=html
34
 
34
 
35
!if $cmd notwordof new renew and $status!=waiting
35
!if $cmd notwordof new renew and $status!=waiting
36
 !readproc oef/valback.proc
36
  !readproc oef/valback.proc
37
 error=double_reply
37
  error=double_reply
38
 !exit
38
  !exit
39
!endif
39
!endif
40
 
40
 
41
!readproc deduc/imagedir.proc
41
!readproc deduc/imagedir.proc
42
!distribute items 0,0,0 into postvarcnt,conditioncnt,feedbackcnt
42
!distribute items 0,0,0 into postvarcnt,conditioncnt,feedbackcnt
43
 
43
 
44
!if $status!=waiting
44
!if $status!=waiting
45
 !read deduc/exo.init
45
  !read deduc/exo.init
46
!else
46
!else
47
 !read $deffile
47
  !read $deffile
48
 !readproc oef/valback.proc
48
  !readproc oef/valback.proc
49
!endif
49
!endif
50
 
50
 
51
m_step=$currstep
51
m_step=$currstep
52
!if $cmd=reply and $status=waiting
52
!if $cmd=reply and $status=waiting
53
 
-
 
54
 !if $opt iswordof newstep newcase gotocase
53
 !if $opt iswordof newstep newcase gotocase
55
  !changeto deduc/var.$opt
54
    !changeto deduc/var.$opt
56
 !endif
55
 !endif
57
 !readproc deduc/meth$methstep.proc
56
 !readproc deduc/meth$methstep.proc
58
 !if $error!=$empty or $methsubstep>1
57
 !if $error!=$empty or $methsubstep>1
59
  !exit
58
    !exit
60
 !endif
59
 !endif
61
 !advance methstep
60
 !advance methstep
62
 !if $methstep<=3 and \
61
 !if $methstep<=3 and \
63
    ($methstep<=2 or \
62
    ($methstep<=2 or \
64
	(($askcontext>0 and $contextlist!=$empty) or \
63
	(($askcontext>0 and $contextlist!=$empty) or \
Line 67... Line 66...
67
 !endif
66
 !endif
68
 methstep=1
67
 methstep=1
69
 thisstepnocount=$stepnocounting
68
 thisstepnocount=$stepnocounting
70
 !read deduc/methreset
69
 !read deduc/methreset
71
 !if $postvarcnt>0
70
 !if $postvarcnt>0
72
  !read $deffile postdef
71
    !read $deffile postdef
73
 !endif
72
 !endif
74
 ctstep=!char 1 to $currstep of $stepcounting
73
 ctstep=!char 1 to $currstep of $stepcounting
75
 ctstep=!text select 1 in $ctstep
74
 ctstep=!text select 1 in $ctstep
76
 ctstep=!charcnt $ctstep
75
 ctstep=!charcnt $ctstep
77
 !if $earlyscore=$empty
76
 !if $earlyscore=$empty
78
  cstep=$[max($m_minsteps,$ctstep-$tolerance)]
77
    cstep=$[max($m_minsteps,$ctstep-$tolerance)]
79
  vstep=$[min($ctstep,$cstep)]
78
    vstep=$[min($ctstep,$cstep)]
80
  uustep=$[max(0,$ustep-$ctstep-max(0,$m_minsteps+$tolerance-$ctstep))]
79
    uustep=$[max(0,$ustep-$ctstep-max(0,$m_minsteps+$tolerance-$ctstep))]
81
  wstep=$[max(1,$vstep)+$ecoeff*$uustep+$pcoeff*$penalty]
80
    wstep=$[max(1,$vstep)+$ecoeff*$uustep+$pcoeff*$penalty]
82
  wscore=$[max(0,(($m_minsteps/$wstep)^$scorepower-$scoremin)/(1-$scoremin))]
81
    wscore=$[max(0,(($m_minsteps/$wstep)^$scorepower-$scoremin)/(1-$scoremin))]
83
  scoretest=$[min(10,rint(100*$wscore)/10)]
82
    scoretest=$[min(10,rint(100*$wscore)/10)]
84
  !if $scoretest<=0
83
    !if $scoretest<=0
85
   earlyscore=0
84
      earlyscore=0
86
   module_score=0
85
      module_score=0
87
   wims_module_log=score $module_score/10
86
      wims_module_log=score $module_score/10
-
 
87
    !endif
-
 
88
  !else
-
 
89
    scoretest=$earlyscore
-
 
90
  !endif
-
 
91
  !if $thisstepnocount!=yes
-
 
92
    !advance ustep
-
 
93
  !endif
-
 
94
  !advance currstep
-
 
95
  m_step=$currstep
-
 
96
  !if $currstep>$cutstep
-
 
97
    scoretest=0
-
 
98
    cutstop=yes
-
 
99
    !changeto deduc/var.finish
-
 
100
  !endif
-
 
101
 
-
 
102
  !if $conditioncnt>0
-
 
103
    !read $deffile test
-
 
104
  !else
-
 
105
    !read deduc/var.checkgoal
-
 
106
  !endif
-
 
107
  !if $condtest1=1 or $condtest1=-1
-
 
108
    !read deduc/var.finish
88
  !endif
109
  !endif
89
 !else
-
 
90
  scoretest=$earlyscore
-
 
91
 !endif
-
 
92
 !if $thisstepnocount!=yes
-
 
93
  !advance ustep
-
 
94
 !endif
-
 
95
 !advance currstep
-
 
96
 m_step=$currstep
-
 
97
 !if $currstep>$cutstep
-
 
98
  scoretest=0
-
 
99
  cutstop=yes
-
 
100
  !changeto deduc/var.finish
-
 
101
 !endif
-
 
102
 
-
 
103
 !if $conditioncnt>0
-
 
104
  !read $deffile test
-
 
105
 !else
-
 
106
  !read deduc/var.checkgoal
-
 
107
 !endif
-
 
108
 !if $condtest1=1 or $condtest1=-1
-
 
109
  !read deduc/var.finish
-
 
110
 !endif
-
 
111
!endif
110
!endif
112
 
-
 
113
 
-