RosettaCodeData/Task/Semiprime/Maple/semiprime-1.maple
2023-07-01 13:44:08 -04:00

10 lines
291 B
Text

SemiPrimes := proc( n )
local fact;
fact := NumberTheory:-Divisors( n ) minus {1, n};
if numelems( fact ) in {1,2} and not( member( 'false', isprime ~ ( fact ) ) ) then
return n;
else
return NULL;
end if;
end proc:
{ seq( SemiPrimes( i ), i = 1..100 ) };