version 1.129, 2008/03/05 18:24:07
|
version 1.132, 2008/03/06 14:04:09
|
Line 157 sub caparesponse_check {
|
Line 157 sub caparesponse_check {
|
|
|
#&LONCAPA_INTERNAL_DEBUG(" type is $type "); |
#&LONCAPA_INTERNAL_DEBUG(" type is $type "); |
if ($type eq 'cs' || $type eq 'ci') { |
if ($type eq 'cs' || $type eq 'ci') { |
#for string answers make surec all places spaces occur, there is |
#for string answers make sure all places spaces occur, there is |
#really only 1 space, in both the answer and the response |
#really only 1 space, in both the answer and the response |
$answer=~s/ +/ /g; |
$answer=~s/ +/ /g; |
$response=~s/ +/ /g; |
$response=~s/ +/ /g; |
Line 311 sub caparesponse_check_list {
|
Line 311 sub caparesponse_check_list {
|
if ($type eq '' || $type eq 'float') { |
if ($type eq '' || $type eq 'float') { |
#for numerical problems split off the unit |
#for numerical problems split off the unit |
# if ( $responses->[0][-1]=~ /(.*[^\s])\s+([^\s]+)/ ) { |
# if ( $responses->[0][-1]=~ /(.*[^\s])\s+([^\s]+)/ ) { |
if ( $responses->[0][-1]=~ /^([\d\.\,\s\$]*(?:(?:[xX\*]10[\^\*]*|[eE]*)[\+\-]*\d*)*(?:^|\S)\d)([\w\s][\$\s\w\^\*\/\(\)\+\-]*\D[\$\s\w\^\*\/\(\)\+\-]*)$/ ) { |
if ( $responses->[0][-1]=~ /^([\d\.\,\s\$]*(?:(?:[xX\*]10[\^\*]*|[eE]*)[\+\-]*\d*)*(?:^|\S)\d+)([\$\s\w\^\*\/\(\)\+\-]*[^\d\.\s\,][\$\s\w\^\*\/\(\)\+\-]*)$/ ) { |
$responses->[0][-1]=$1; |
$responses->[0][-1]=$1; |
$unit=&capa_formula_fix($2); |
$unit=&capa_formula_fix($2); |
&LONCAPA_INTERNAL_DEBUG("Found unit :$unit:"); |
&LONCAPA_INTERNAL_DEBUG("Found unit :$unit:"); |
Line 322 sub caparesponse_check_list {
|
Line 322 sub caparesponse_check_list {
|
if ($unit ne '') { |
if ($unit ne '') { |
foreach my $response (@$responses) { |
foreach my $response (@$responses) { |
foreach my $element (@$response) { |
foreach my $element (@$response) { |
$element =~ s/\s//g; |
$element =~ s/\s//g; |
$element .= " $unit"; |
my $appendunit=$unit; |
|
if ($unit=~/\%/) { |
|
$element=$element/100; |
|
$appendunit=~s/\%//; |
|
} |
|
$element .= " $appendunit"; |
|
&LONCAPA_INTERNAL_DEBUG("Made response element :$element:"); |
} |
} |
} |
} |
} |
} |