version 1.315, 2006/02/25 20:25:02
|
version 1.316, 2006/02/26 00:30:17
|
Line 471 sub jscriptNform {
|
Line 471 sub jscriptNform {
|
# Given the score (as a number [0-1] and the weight) what is the final |
# Given the score (as a number [0-1] and the weight) what is the final |
# point value? This function will round to the nearest tenth, third, |
# point value? This function will round to the nearest tenth, third, |
# or quarter if one of those is within the tolerance of .00001. |
# or quarter if one of those is within the tolerance of .00001. |
sub compute_points |
sub compute_points { |
{ |
|
my ($score, $weight) = @_; |
my ($score, $weight) = @_; |
|
|
my $tolerance = .00001; |
my $tolerance = .00001; |
Line 483 sub compute_points
|
Line 482 sub compute_points
|
my ($factor) = @_; |
my ($factor) = @_; |
my $num = ($points * $factor) + $tolerance; |
my $num = ($points * $factor) + $tolerance; |
my $floored_num = floor($num); |
my $floored_num = floor($num); |
if ($num - $floored_num < 2 * $tolerance * $factor) |
if ($num - $floored_num < 2 * $tolerance * $factor) { |
{ |
|
return $floored_num / $factor; |
return $floored_num / $factor; |
} |
} |
return $points; |
return $points; |