mirror of
https://github.com/voltrevo/ValueScript.git
synced 2026-04-18 03:00:27 -04:00
projEuler7.ts
This commit is contained in:
35
inputs/passing/projEuler7.ts
Normal file
35
inputs/passing/projEuler7.ts
Normal file
@@ -0,0 +1,35 @@
|
||||
export default function main() {
|
||||
let i = 1;
|
||||
let p = 2;
|
||||
|
||||
while (i < 10001) {
|
||||
p = nextOddPrime(p);
|
||||
i++;
|
||||
}
|
||||
|
||||
return p;
|
||||
}
|
||||
|
||||
function nextOddPrime(n: number): number {
|
||||
n += 1 + (n % 2); // Next odd number
|
||||
|
||||
while (!isOddPrime(n)) {
|
||||
n += 2;
|
||||
}
|
||||
|
||||
return n;
|
||||
}
|
||||
|
||||
function isOddPrime(n: number): boolean {
|
||||
let i = 3;
|
||||
|
||||
while (i * i <= n) {
|
||||
if (n % i === 0) {
|
||||
return false;
|
||||
}
|
||||
|
||||
i += 2;
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
Reference in New Issue
Block a user