Subversion Repositories wimsdev

Rev

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

Rev 17150 Rev 17151
Line 22... Line 22...
22
  !for k=1 to $nbuser
22
  !for k=1 to $nbuser
23
    d=!record $k of wimshome/log/classes/$wims_class/.userlist
23
    d=!record $k of wimshome/log/classes/$wims_class/.userlist
24
    userlist=!append item $(d[3]) to $userlist
24
    userlist=!append item $(d[3]) to $userlist
25
  !next k
25
  !next k
26
  !writefile $clsfile $wims_nowseconds $wims_now
26
  !writefile $clsfile $wims_nowseconds $wims_now
-
 
27
  !! generation indice de difficulte of each exercise
-
 
28
  !sh export exostat_dirbase exostat_types exostat_classes\
-
 
29
    exostat_dirbase=$wims_home/log/classes\
-
 
30
    exostat_types="score"\
-
 
31
    exostat_classes="$wims_class"\
-
 
32
    ../bin/exostat >$wims_home/log/classes/$wims_class/exostat
-
 
33
  !reset indice
-
 
34
  t=!recordcnt wimshome/log/classes/$wims_class/exostat
-
 
35
  ms=1
-
 
36
  me=0
-
 
37
  max=0
-
 
38
  !for k=1 to $t
-
 
39
    dt=!record $k of wimshome/log/classes/$wims_class/exostat
-
 
40
    !distribute word $dt into bl,s,e,bl,bl,bl,bl,bl,bl,bl,bl,bl,bl,bl,bl,i
-
 
41
    !if $s>$ms
-
 
42
      ne=!recordcnt wimshome/log/classes/$wims_class/sheets/.sheet$ms
-
 
43
      me=!itemcnt $ligne
-
 
44
      !ifval $me<$ne
-
 
45
        !for j=1 to $[$ne-$me]
-
 
46
          ligne=!append item - to $ligne
-
 
47
        !next j
-
 
48
      !endif
-
 
49
      indice=!append line $ligne to $indice
-
 
50
      !reset ligne
-
 
51
      ms=$s
-
 
52
      me=0
-
 
53
    !endif
-
 
54
    !ifval $e>$me+1
-
 
55
      !for j=1 to $[$e-$me-1]
-
 
56
        ligne=!append item - to $ligne
-
 
57
      !next j
-
 
58
    !endif
-
 
59
    !if $i>0
-
 
60
      ligne=!append item $i to $ligne
-
 
61
      max=$[max($max,$i)]
-
 
62
    !else
-
 
63
      ligne=!append item - to $ligne
-
 
64
    !endif
-
 
65
    me=$e
-
 
66
  !next k
27
  time2=yes
67
  time2=yes
-
 
68
  !! ------ fin de generation
-
 
69
  indice=!replace internal - by $max in $indice
28
!endif
70
!endif
29
time1=$wims_nowseconds
71
time1=$wims_nowseconds
30
!writefile $ufile $wims_nowseconds $wims_now 100000
72
!writefile $ufile $wims_nowseconds $wims_now 10000000
31
majdate=$wims_now
73
majdate=$wims_now
32
nbuser=!recordcnt wimshome/log/classes/$wims_class/.userlist
74
nbuser=!recordcnt wimshome/log/classes/$wims_class/.userlist
33
!for sh=1 to $nbsheet
75
!for sh=1 to $nbsheet
34
  dtsh=!record $sh of wimshome/log/classes/$wims_class/sheets/.sheets
76
  dtsh=!record $sh of wimshome/log/classes/$wims_class/sheets/.sheets
35
  stat=!line 1 of $dtsh
77
  stat=!line 1 of $dtsh
Line 98... Line 140...
98
    !for k=1 to $nbexo
140
    !for k=1 to $nbexo
99
      !if $time2=yes
141
      !if $time2=yes
100
        ave=$[rint($(average[$k])/$nbuser)]
142
        ave=$[rint($(average[$k])/$nbuser)]
101
        ave2=$[rint($(average[$k])/$(count[$k]))]
143
        ave2=$[rint($(average[$k])/$(count[$k]))]
102
        m=$[rint($(max[$k]))]
144
        m=$[rint($(max[$k]))]
-
 
145
        ind=$(indice[$sh;$k])
103
        tmp=!append line $sh $k $ave $m $ave2 to $tmp
146
        tmp=!append line $sh $k $ave $m $ave2 $ind to $tmp
104
      !else
147
      !else
105
        ave=!line $k of $tmp
148
        ave=!line $k of $tmp
106
        m=!word 4 of $ave
149
        m=!word 4 of $ave
107
        ave2=!word 5 of $ave
150
        ave2=!word 5 of $ave
-
 
151
        ind=!word 6 of $ave
108
        ave=!word 3 of $ave
152
        ave=!word 3 of $ave
109
      !endif
153
      !endif
110
      !if $(wei[$k])!=0 and $swei!=0
154
      !if $(wei[$k])!=0 and $swei!=0
111
        val=$[rint($ave - $(useraverage[$k]))]
-
 
112
        val=$[rint($val *$swei * $(wei[$k])/($totwei))]
155
        val=$[rint(100*($ave - $(useraverage[$k])) *$swei * $(wei[$k])/($totwei*$ind))]
113
        !if $val<=0
156
        !if $val<=0
114
          val=-1000
157
          val=-1000
115
        !endif
158
        !endif
116
      !else
159
      !else
117
        !if $swei!=0
160
        !if $swei!=0
118
          val=$[-10000*$swei]
161
          val=$[-10000*$swei]
119
        !else
162
        !else
120
          val=-10000
163
          val=-10000
121
        !endif
164
        !endif
122
      !endif
165
      !endif
123
      m2=$[rint($m-$(useraverage[$k]))]
166
      m2=$[rint(100*($m - $(useraverage[$k])) *$swei * $(wei[$k])/($totwei*$ind))]
124
      !appendfile $ufile :$sh $k $val $m2 $ave $m $ave2
167
      !appendfile $ufile :$sh $k $val $m2 $ave $m $ave2
125
    !next k
168
    !next k
126
    !if $time2=yes
169
    !if $time2=yes
127
      !appendfile $clsfile :$tmp
170
      !appendfile $clsfile :$tmp
128
    !endif
171
    !endif