]>
git.proxmox.com Git - ceph.git/blob - ceph/src/civetweb/src/third_party/duktape-1.3.0/examples/guide/prime.js
3 // Pure Ecmascript version of low level helper
4 function primeCheckEcmascript(val
, limit
) {
5 for (var i
= 2; i
<= limit
; i
++) {
6 if ((val
% i
) == 0) { return false; }
11 // Select available helper at load time
12 var primeCheckHelper
= (this.primeCheckNative
|| primeCheckEcmascript
);
14 // Check 'val' for primality
15 function primeCheck(val
) {
16 if (val
== 1 || val
== 2) { return true; }
17 var limit
= Math
.ceil(Math
.sqrt(val
));
18 while (limit
* limit
< val
) { limit
+= 1; }
19 return primeCheckHelper(val
, limit
);
22 // Find primes below one million ending in '9999'.
23 function primeTest() {
26 print('Have native helper: ' + (primeCheckHelper
!== primeCheckEcmascript
));
27 for (var i
= 1; i
< 1000000; i
++) {
28 if (primeCheck(i
) && (i
% 10000) == 9999) { res
.push(i
); }