[prev in list] [next in list] [prev in thread] [next in thread]
List: lon-capa-cvs
Subject: [LON-CAPA-cvs] cvs: loncom /homework default_homework.lcpm
From: www <lon-capa-cvs () mail ! lon-capa ! org>
Date: 2006-06-30 21:24:27
Message-ID: cvswww1151702667 () cvsserver
[Download RAW message or body]
www Fri Jun 30 17:24:27 2006 EDT
Modified files:
/loncom/homework default_homework.lcpm
Log:
Partial bug #977: implicit multiplication in clear-cut places
Index: loncom/homework/default_homework.lcpm
diff -u loncom/homework/default_homework.lcpm:1.107 \
loncom/homework/default_homework.lcpm:1.108
--- loncom/homework/default_homework.lcpm:1.107 Tue Jun 13 10:57:54 2006
+++ loncom/homework/default_homework.lcpm Fri Jun 30 17:24:27 2006
@@ -1,7 +1,7 @@
# The LearningOnline Network with CAPA
# used by lonxml::xmlparse() as input variable $safeinit to Apache::run::run()
#
-# $Id: default_homework.lcpm,v 1.107 2006/06/13 14:57:54 albertel Exp $
+# $Id: default_homework.lcpm,v 1.108 2006/06/30 21:24:27 www Exp $
#
# Copyright Michigan State University Board of Trustees
#
@@ -152,9 +152,9 @@
my $reterror="";
my $result;
if ($type eq '9') {
- $result = &maxima_check($response,$answer,\$reterror);
+ $result = &maxima_check(&maxima_cas_formula_fix($response),&maxima_cas_formula_fix($answer),\$reterror);
} else {
- $result = &caparesponse_capa_check_answer($response,$answer,$type,
+ $result = &caparesponse_capa_check_answer(&capa_formula_fix($response),&capa_formula_fix($answer),$type,
$tol_type,$tol,
$sig_lbound,$sig_ubound,
$ans_fmt,$unit,$calc,$id_list,
@@ -184,6 +184,23 @@
return ("$result:\nRetError $reterror:\nAnswer $answer:\nResponse $response:\n \
type-$type|$tol|$tol_type|$sig:$sig_lbound:$sig_ubound|$unit|\n$message",$reterror); \
}
+sub maxima_cas_formula_fix {
+ my ($expression)=@_;
+ return &implicit_multiplication($expression);
+}
+
+sub capa_formula_fix {
+ my ($expression)=@_;
+ return &implicit_multiplication($expression);
+}
+
+sub implicit_multiplication {
+ my ($expression)=@_;
+ $expression=~s/\s+/\*/g;
+ $expression=~s/(\d)([a-zA-Z\(])/$1\*$2/g;
+ $expression=~s/\)(\w)/\)\*$1/g;
+ return $expression;
+}
sub caparesponse_check_list {
my $response=$LONCAPA::CAPAresponse_args{'response'};
_______________________________________________
LON-CAPA-cvs mailing list
LON-CAPA-cvs@mail.lon-capa.org
http://mail.lon-capa.org/mailman/listinfo/lon-capa-cvs
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic