version 1.108, 2006/06/30 21:24:27
|
version 1.110, 2006/07/17 21:11:21
|
Line 154 sub caparesponse_check {
|
Line 154 sub caparesponse_check {
|
if ($type eq '9') { |
if ($type eq '9') { |
$result = &maxima_check(&maxima_cas_formula_fix($response),&maxima_cas_formula_fix($answer),\$reterror); |
$result = &maxima_check(&maxima_cas_formula_fix($response),&maxima_cas_formula_fix($answer),\$reterror); |
} else { |
} else { |
$result = &caparesponse_capa_check_answer(&capa_formula_fix($response),&capa_formula_fix($answer),$type, |
if ($type eq '8') { # fml type |
|
$response = &capa_formula_fix($response); |
|
$answer = &capa_formula_fix($answer); |
|
} |
|
$result = &caparesponse_capa_check_answer($response,$answer,$type, |
$tol_type,$tol, |
$tol_type,$tol, |
$sig_lbound,$sig_ubound, |
$sig_lbound,$sig_ubound, |
$ans_fmt,$unit,$calc,$id_list, |
$ans_fmt,$unit,$calc,$id_list, |
Line 196 sub capa_formula_fix {
|
Line 200 sub capa_formula_fix {
|
|
|
sub implicit_multiplication { |
sub implicit_multiplication { |
my ($expression)=@_; |
my ($expression)=@_; |
$expression=~s/\s+/\*/g; |
$expression=~s/(\d+)e([\+\-]*\d+)/$1\&\($2\)/gsi; |
$expression=~s/(\d)([a-zA-Z\(])/$1\*$2/g; |
$expression=~s/(\d+)(?:x|\*)10(?:\^|\*\*)([\+\-]*\d+)/$1\&\($2\)/gsi; |
$expression=~s/\)(\w)/\)\*$1/g; |
$expression=~s/\s+/\*/gs; |
|
$expression=~s/(\d)([a-zA-Z\(])/$1\*$2/gs; |
|
$expression=~s/([a-zA-Z])(\d)/$1\*$2/gs; |
|
$expression=~s/\)(\w)/\)\*$1/gs; |
|
$expression=~s/(\d+)\&\(([\+\-]*\d+)\)/$1e$2/gs; |
return $expression; |
return $expression; |
} |
} |
|
|