# HG changeset patch # User Heiko Schlittermann (JUMPER) # Date 1319920067 -7200 # Node ID 27520a5fe8a4f456cac45866f440a1fdcbd018b1 # Parent 6a025d65693502cab90463f86c10b3d20967d041 optimized: no need to scan the range > $number/2 diff -r 6a025d656935 -r 27520a5fe8a4 prime --- a/prime Sat Oct 29 22:18:16 2011 +0200 +++ b/prime Sat Oct 29 22:27:47 2011 +0200 @@ -39,11 +39,12 @@ my $m = $_[0]; my @divisors; - for (my $i = 2 ; $i <= $m ; $i++) { + for (my $i = 2 ; $i <= $m/2; $i++) { if ($m % $i == 0) { push @divisors, $i; } } + push @divisors, $m; return @divisors; }