version 1.118, 2003/10/23 07:54:55
|
version 1.119, 2003/10/23 19:29:24
|
Line 444 sub format_number {
|
Line 444 sub format_number {
|
sub make_numerical_bubbles { |
sub make_numerical_bubbles { |
my ($number_of_bubbles,$target,$answer,$format,$incorrect) =@_; |
my ($number_of_bubbles,$target,$answer,$format,$incorrect) =@_; |
my @bubble_values = (); |
my @bubble_values = (); |
&Apache::lonxml::debug("incorrect is $incorrect"); |
&Apache::lonxml::debug("answer is $answer incorrect is $incorrect"); |
|
my @oldseed=&Math::Random::random_get_seed(); |
if (defined($incorrect) && ref($incorrect)) { |
if (defined($incorrect) && ref($incorrect)) { |
&Apache::lonxml::debug("inside ".(scalar(@$incorrect)+1 gt $number_of_bubbles)); |
&Apache::lonxml::debug("inside ".(scalar(@$incorrect)+1 gt $number_of_bubbles)); |
if (scalar(@$incorrect)+1 >= $number_of_bubbles) { |
if (scalar(@$incorrect)+1 >= $number_of_bubbles) { |
Line 454 sub make_numerical_bubbles {
|
Line 455 sub make_numerical_bubbles {
|
@bubble_values=@rand_inc[0..($number_of_bubbles-2)]; |
@bubble_values=@rand_inc[0..($number_of_bubbles-2)]; |
@bubble_values=sort {$a <=> $b} (@bubble_values,$answer); |
@bubble_values=sort {$a <=> $b} (@bubble_values,$answer); |
&Apache::lonxml::debug("Answer was :$answer: returning :".$#bubble_values.": whih are :".join(':',@bubble_values)); |
&Apache::lonxml::debug("Answer was :$answer: returning :".$#bubble_values.": whih are :".join(':',@bubble_values)); |
|
&Math::Random::random_set_seed(@oldseed); |
return @bubble_values; |
return @bubble_values; |
} |
} |
#FIXME what to do when not enough incorrects specified? |
#FIXME what to do when not enough incorrects specified? |
Line 471 sub make_numerical_bubbles {
|
Line 473 sub make_numerical_bubbles {
|
$format,$target); |
$format,$target); |
|
|
} |
} |
|
&Math::Random::random_set_seed(@oldseed); |
return @bubble_values; |
return @bubble_values; |
} |
} |
|
|