sub next_prime_iterator { my $num = shift(@_); return 3 if $num < 3; do { $num += 2 } until is_prime($num); return $num; } sub is_prime { my $guess = shift(@_); my $divisor = 3; my $quotient; while(1) { $quotient= $guess / $divisor; return 1 if $quotient < $divisor; return 0 if int($quotient) == $quotient; $divisor += 2; } }