Category talk:Wren-math: Difference between revisions

→‎Source code: Int.isPrime now uses a larger wheel - about 25% quicker than before.
(→‎Source code: Added Math.dim method.)
(→‎Source code: Int.isPrime now uses a larger wheel - about 25% quicker than before.)
Line 319:
static binomial(n, k) { multinomial(n, [k, n-k]) }
 
// Determines whether 'n' is prime using a wheel with basis [2, 3, 5].
// Not accessing the wheel via a list improves performance by about 25%.
static isPrime(n) {
if (!n.isInteger || n < 2) return false
if (n%2 == 0) return n == 2
if (n%3 == 0) return n == 3
varif d(n%5 == 0) return n == 5
var d = 7
while (d*d <= n) {
if (n%d == 0) return false
d = d + 4
if (n%d == 0) return false
d = d + 2
if (n%d == 0) return false
d = d + 4
if (n%d == 0) return false
d = d + 2
if (n%d == 0) return false
d = d + 4
if (n%d == 0) return false
d = d + 6
if (n%d == 0) return false
d = d + 2
if (n%d == 0) return false
d = d + 6
if (n%d == 0) return false
}
return true
9,476

edits