Sorry about the delay, I've been ill.
The behavior you are observing is likely due to the input accepted by the Math::SigFigs module itself. This can be checked by directly running a small perl script on directly on your computer or VM. Below is one example, followed by the output. Both the carrot and double asterisk notation return absent values.
As a work-around, I suppose you could use regex to parse the original_student_ans value to search and replace the carrot and double asterisk symbols.
Program: prog.pl
--------------------------------------
use Math::SigFigs qw(:all);
$n1="2.34E3";
$n2="1.1";
$n3="4.56*10^2";
$n4="4.56*10**2";
$nsf1=CountSigFigs($n1);
print "$n1 has $nsf1 sig figs\n";
$sum12=addSF($n1,$n2);
print "$n1 + $n2 is $sum12\n\n";
$nsf3=CountSigFigs($n3);
print "$n3 has $nsf3 sig figs\n";
$sum23=addSF($n2,$n3);
print "$n2 + $n3 is $sum23\n\n";
$nsf4=CountSigFigs($n4);
print "$n4 has $nsf4 sig figs\n";
$sum24=addSF($n2,$n4);
print "$n2 + $n4 is $sum24\n\n";
Output
----------
$ perl ./prog.pl
2.34E3 has 3 sig figs
2.34E3 + 1.1 is 2340
4.56*10^2 has sig figs
1.1 + 4.56*10^2 is
4.56*10**2 has sig figs
1.1 + 4.56*10**2 is
The behavior you are observing is likely due to the input accepted by the Math::SigFigs module itself. This can be checked by directly running a small perl script on directly on your computer or VM. Below is one example, followed by the output. Both the carrot and double asterisk notation return absent values.
As a work-around, I suppose you could use regex to parse the original_student_ans value to search and replace the carrot and double asterisk symbols.
Program: prog.pl
--------------------------------------
use Math::SigFigs qw(:all);
$n1="2.34E3";
$n2="1.1";
$n3="4.56*10^2";
$n4="4.56*10**2";
$nsf1=CountSigFigs($n1);
print "$n1 has $nsf1 sig figs\n";
$sum12=addSF($n1,$n2);
print "$n1 + $n2 is $sum12\n\n";
$nsf3=CountSigFigs($n3);
print "$n3 has $nsf3 sig figs\n";
$sum23=addSF($n2,$n3);
print "$n2 + $n3 is $sum23\n\n";
$nsf4=CountSigFigs($n4);
print "$n4 has $nsf4 sig figs\n";
$sum24=addSF($n2,$n4);
print "$n2 + $n4 is $sum24\n\n";
Output
----------
$ perl ./prog.pl
2.34E3 has 3 sig figs
2.34E3 + 1.1 is 2340
4.56*10^2 has sig figs
1.1 + 4.56*10^2 is
4.56*10**2 has sig figs
1.1 + 4.56*10**2 is