Sieve of Eratosthenes: Difference between revisions
Content added Content deleted
imported>Polarit |
Langurmonkey (talk | contribs) |
||
Line 11,519: | Line 11,519: | ||
{{trans|D}} |
{{trans|D}} |
||
<syntaxhighlight lang="langur">val .sieve = f(.limit) { |
<syntaxhighlight lang="langur">val .sieve = f(.limit) { |
||
if .limit < 2 |
if .limit < 2: return [] |
||
return [] |
|||
} |
|||
var .composite = arr .limit, false |
var .composite = arr .limit, false |
||
.composite[1] = true |
.composite[1] = true |
||
for .n in 2 |
for .n in 2 .. truncate(.limit ^/ 2) + 1 { |
||
if not .composite[.n] { |
if not .composite[.n] { |
||
for .k = .n^2; .k < .limit; .k += .n { |
for .k = .n^2 ; .k < .limit ; .k += .n { |
||
.composite[.k] = true |
.composite[.k] = true |
||
} |
} |