version 1.5, 2000/10/12 21:51:03
|
version 1.7, 2000/10/25 22:02:53
|
Line 4
|
Line 4
|
# |
# |
$RANDOMINIT=0; |
$RANDOMINIT=0; |
|
|
|
sub caparesponse_check { |
|
my $answer=''; |
|
my $type=''; |
|
my $tol_type=''; |
|
my $tolerance=''; |
|
my $sig_lbound=''; |
|
my $sig_ubound=''; |
|
my $ans_fmt=''; |
|
my $unit_str=''; |
|
my $calc=''; |
|
my ($response,$expr)=@_; |
|
|
|
($answer,$type,$tol_type,$tolerance,$sig_lbound,$sig_ubound,$ans_fmt, |
|
$unit_str,$calc) = eval $expr.'return $answer,$type,$tol_type,$tolerance,$sig_lbound,$sig_ubound,$ans_fmt,$unit_str,$calc'; |
|
my $result = &caparesponse_capa_check_answer($response,$answer,$type, |
|
$tol_type,$tolerance, |
|
$sig_lbound,$sig_ubound, |
|
$ans_fmt, $unit_str,$calc); |
|
return ":$result:$response:$answer:"; |
|
} |
|
|
sub tex { |
sub tex { |
if ( $external::target eq "tex" ) { |
if ( $external::target eq "tex" ) { |
#$SCRIPT_RESULT.=@_[0]; |
#$SCRIPT_RESULT.=@_[0]; |
Line 70 sub format {
|
Line 91 sub format {
|
sub map { |
sub map { |
my $num = $#_/2; |
my $num = $#_/2; |
my $i; |
my $i; |
|
my @used; |
|
my @permutation; |
|
for ($i=0; $i < $num;) { |
|
$rand = &random(1,$num,1); |
|
if ( $used[$rand] == '0' ) { |
|
$i++; |
|
$used[$rand]='1'; |
|
$permutation[$i]=$rand; |
|
} |
|
} |
for ( $i=1 ; $i<$num+1 ; $i++ ) { |
for ( $i=1 ; $i<$num+1 ; $i++ ) { |
${$_[$i]}=$_[$i+$num] |
${$_[$permutation[$i]]}=$_[$i+$num] |
} |
} |
} |
} |
|
|
Line 79 sub choose {
|
Line 110 sub choose {
|
my $num = $_[0]; |
my $num = $_[0]; |
return $_[$num]; |
return $_[$num]; |
} |
} |
|
#$external::randomseed=time; |
#$a=2; |
#$a=2; |
#$b=2; |
#$b=2; |
#&map(1,\$a,\$b,3,4); |
#$c=2; |
|
#&map(1,\$a,\$b,\$c,3,4,5); |
#print $a."\n".$b."\n"; |
#print $a."\n".$b."\n"; |