$| = 1; $i = 1; while (1) { if (isprime($i)) { $p = 1; for ($j = 1; $j <= length($i); $j++) { if ($i !~ $j) { $p = 0; last; } } if ($p) { print "F: $i\n"; } } $i += 2; } exit; sub isprime { my $num = $_[0]; my $val = 'prime'; if ($num =~ /^\d+$/ && $num >= 2) { my $mod = 2; my $div = int sqrt $num; while ($mod <= $div) { ($num % $mod) == 0 ? ($val = 'composite', last) : $mod++; } } else { $val = 'neither'; } if ($val eq 'prime') { return 1; } else { return 0; } }