Honaker primes: Difference between revisions
m
Forth performance improvement
(Added Forth solution) |
m (Forth performance improvement) |
||
Line 754:
=={{header|Forth}}==
{{works with|Gforth}}
<syntaxhighlight lang="forth">
create sieve limit allot
: notprime! ( n -- ) here + 1 swap c! ;▼
:
: prime_sieve
3
begin
dup dup *
while
dup prime? if
i notprime!
dup 2* +loop
Line 781 ⟶ 779:
10 /mod recurse + ;
:
begin
until ;
: next_honaker_prime ( u u -- u u )
begin
swap
2dup digit_sum swap digit_sum =
until ;
Line 796 ⟶ 794:
: main
." First 50 Honaker primes (index, prime):" cr
begin
dup 50 <
|