in reply to performance of perl vs java
I noticed that the comparison is not the same between the two versions.
The Perl version is finding primes where the Java version is just printing the first 100 numbers that come along. That is why it was so fast.
#!/usr/bin/perl use warnings; use strict; my $maxprimes=100; my $value=1; my $count=0; my $start=time(); print "Printing the first $maxprimes numbers that are prime... \n"; while ($count < $maxprimes) { $value++; my $composite=0;#false OUTER: for (my $i=2; $i < $value; $i++) { INNER: for (my $j=$i; $j<$value; $j++) { if (($j*$i) == $value) { $composite=1;#true last OUTER; } } } # if (! $composite) #this works if ($composite == 1) #from the java section, doesn't work { $count++; print "$value is prime\n"; } } my $time = (time() - $start); print "Took $time seconds.";
Update: It looks like it prints the non-prime numbers.
Printing the first 100 numbers that are prime... 4 is prime 6 is prime 8 is prime 9 is prime 10 is prime 12 is prime 14 is prime 15 is prime . . . 128 is prime 129 is prime 130 is prime 132 is prime 133 is prime Took 0 seconds.
|
---|
In Section
Seekers of Perl Wisdom