Frobenius numbers: Difference between revisions
Content added Content deleted
(Added AppleScript.) |
|||
Line 56: | Line 56: | ||
{{out}} |
{{out}} |
||
<pre>1 7 23 59 119 191 287 395 615 839 1079 1439 1679 1931 2391 3015 3479 3959 4619 5039 5615 6395 7215 8447 9599</pre> |
<pre>1 7 23 59 119 191 287 395 615 839 1079 1439 1679 1931 2391 3015 3479 3959 4619 5039 5615 6395 7215 8447 9599</pre> |
||
=={{header|AppleScript}}== |
|||
<lang applescript>on isPrime(n) |
|||
if (n < 4) then return (n > 1) |
|||
if ((n mod 2 is 0) or (n mod 3 is 0)) then return false |
|||
repeat with i from 5 to (n ^ 0.5) div 1 by 6 |
|||
if ((n mod i is 0) or (n mod (i + 2) is 0)) then return false |
|||
end repeat |
|||
return true |
|||
end isPrime |
|||
on Frobenii(max) |
|||
script o |
|||
property frobs : {} |
|||
end script |
|||
set p to 2 |
|||
set n to 3 |
|||
repeat |
|||
if (isPrime(n)) then |
|||
set frob to p * n - p - n |
|||
if (frob > max) then exit repeat |
|||
set end of o's frobs to frob |
|||
set p to n |
|||
end if |
|||
set n to n + 2 |
|||
end repeat |
|||
return o's frobs |
|||
end Frobenii |
|||
Frobenii(9999)</lang> |
|||
{{output}} |
|||
<lang applescript>{1, 7, 23, 59, 119, 191, 287, 395, 615, 839, 1079, 1439, 1679, 1931, 2391, 3015, 3479, 3959, 4619, 5039, 5615, 6395, 7215, 8447, 9599}</lang> |
|||
=={{header|Arturo}}== |
=={{header|Arturo}}== |