Semiprime: Difference between revisions
→{{header|ALGOL 68}}: bug fix
(Added Algol 68) |
(→{{header|ALGOL 68}}: bug fix) |
||
Line 66:
FOR factor FROM 2 TO ENTIER sqrt( ABS n )
WHILE IF n MOD factor = 0 THEN
factor count +:= 1;
# check the factor isn't a repeated factor #
IF n /= factor * factor THEN
# the factor isn't the square root #
INT other factor = n OVER factor;
IF other factor MOD factor = 0 THEN
# have a repeated factor #
factor count +:= 1
FI
FI
FI;
factor count < 2
Line 83 ⟶ 92:
IF is semi prime( i ) THEN print( ( whole( i, 0 ), " " ) ) FI
OD;
print( ( newline ) )
</lang>
{{out}}
<pre>
semi primes below 100: 4 6
semi primes below between 1670 and 1690: 1671 1673 1678 1679 1681 1685 1687 1689
</pre>
|