Primality by trial division: Difference between revisions

Content added Content deleted
(Add EasyLang)
(→‎OCaml: simplified & faster)
Line 2,899: Line 2,899:
=={{header|OCaml}}==
=={{header|OCaml}}==
<syntaxhighlight lang="ocaml">let is_prime n =
<syntaxhighlight lang="ocaml">let is_prime n =
if n = 2 then true
let rec test x =
else if n < 2 || n mod 2 = 0 then false
x * x > n || n mod x <> 0 && n mod (x + 2) <> 0 && test (x + 6)
else
in
let rec loop k =
if n < 5
if k * k > n then true
then n land 2 <> 0
else if n mod k = 0 then false
else n land 1 <> 0 && n mod 3 <> 0 && test 5</syntaxhighlight>
else loop (k+2)
in loop 3</syntaxhighlight>


=={{header|Octave}}==
=={{header|Octave}}==