http://qs1969.pair.com?node_id=417277

in reply to Re^4: Modulus zero error

Can I ask... are you trying to do a Logical short-circuit AND (&&) in your if statement (to make sure both components are "true") or are you intentionaly performing a binary AND (&) on the data?

Replies are listed 'Best First'.
Re^6: Modulus zero error
by Anonymous Monk on Dec 24, 2004 at 08:31 UTC
Nope, that was just me being ignorant... I changed it to &&, but it still behaves the same way

ok.. it would help to know what was in \$p and what you were trying to do. for(;;) loops aren't as commonly used in Perl as they are in C as there are often more convenient idioms.

```#Assume @p is a list of numbers?
my @p=(0..10);

for(\$x = \$prevmax;\$x<=\$max;\$x++){
\$n = sqrt(\$x);
\$i = 0;
#Dividing by 0 is always an error... make sure \$p[\$i] is true
while ( (\$p[\$i]) && (\$x%\$p[\$i] !=0) ) {
\$i++;
if ((\$n < \$p[\$i]) && (\$x > \$p[-1])) {
print (1 & (\$x > \$p[-1])); # <--what are you expecting her
+e
push(@p,\$x."\n");
last;
}
}
}