Semiprime: Difference between revisions

Content added Content deleted
(Add Perl implementation)
Line 431: Line 431:
return 0; /* never used */
return 0; /* never used */
}</lang>
}</lang>

=={{header|Perl}}==
<tt>factor</tt> in scalar context gives the number of factors (like <tt>bigomega</tt> in Pari/GP and <tt>PrimeOmega</tt> in Mathematica).
<lang perl>use Math::Prime::Util "factor";
print join(" ", grep { scalar factor($_) == 2 } 1..100),"\n";
print join(" ", grep { scalar factor($_) == 2 } 1675..1681),"\n";
print join(" ", grep { scalar factor($_) == 2 } (2,4,99,100,1679,5040,32768,1234567,9876543,900660121)),"\n";</lang>
{{out}}
<pre>4 6 9 10 14 15 21 22 25 26 33 34 35 38 39 46 49 51 55 57 58 62 65 69 74 77 82 85 86 87 91 93 94 95
1678 1679 1681
4 1679 1234567 900660121</pre>


=={{header|Perl 6}}==
=={{header|Perl 6}}==