Semiprime: Difference between revisions

Line 760:
 
=={{header|Scala}}==
{{trans|D}}
{{works with|Scala 2.9.1}}
<lang Scala>object Semiprime extends App {
 
def isSP(n: Int): Boolean = {
var nf: Int = 0
var l = n
for (i <- 2 to l+1) {
while (l % i == 0) {
if (nf == 2) return false
nf +=1
l /= i
}
}
nf == 2
}
 
(2 to 100) filter {isSP(_) == true} foreach {i => print("%d ".format(i))}
1675 to 1681 foreach {i => println(i+" -> "+isSP(i))}
}</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 1675 -> false
1676 -> false
1677 -> false
1678 -> true
1679 -> true
1680 -> false
1681 -> true</pre>
 
=={{header|Tcl}}==
{{tcllib|math::numtheory}}