Long primes: Difference between revisions
m
Forth - rewrote modpow to use locals
m (Forth - added execution time) |
m (Forth - rewrote modpow to use locals) |
||
Line 657:
=={{header|Forth}}==
{{works with|Gforth}}
The prime sieve code was borrowed from [[Sieve of Eratosthenes#Forth]].
<lang forth>: prime? ( n -- ? ) here + c@ 0= ;
Line 678 ⟶ 679:
2drop ;
: modpow
1
begin
while
then
repeat ;
: divide_out ( n1 n2 -- n )
Line 713 ⟶ 710:
r@ prime? if
dup r@ mod 0= if
over dup 1- r@ /
2drop rdrop false exit
then
Line 723 ⟶ 720:
rdrop
dup 1 = if 2drop true exit then
over 1- swap /
: next_long_prime ( n -- n )
|