No such thing as a small change PerlMonks

### Re: performance of perl vs java

by Lotus1 (Curate)
 on Oct 27, 2011 at 17:26 UTC ( #934191=note: print w/replies, xml ) Need Help??

in reply to performance of perl vs java

I noticed that the comparison is not the same between the two versions.

• Java version:   if (\$composite == 1)
• Perl version:   if (! \$composite)
• 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.

Create A New User
Node Status?
node history
Node Type: note [id://934191]
help
Chatterbox?
and all is quiet...

How do I use this? | Other CB clients
Other Users?
Others imbibing at the Monastery: (7)
As of 2018-01-23 11:07 GMT
Sections?
Information?
Find Nodes?
Leftovers?
Voting Booth?
How did you see in the new year?

Results (243 votes). Check out past polls.

Notices?