mirror of
https://github.com/TheAlgorithms/JavaScript.git
synced 2025-07-06 01:18:23 +08:00
Merge pull request #602 from thivagar-manickam/project-euler
Project euler problem 10
This commit is contained in:
24
Project-Euler/Problem10.js
Normal file
24
Project-Euler/Problem10.js
Normal file
@ -0,0 +1,24 @@
|
||||
// https://projecteuler.net/problem=10
|
||||
|
||||
const isPrime = (number) => {
|
||||
if (number === 2) return true
|
||||
if (number % 2 === 0) return false
|
||||
|
||||
for (let j = 3; j * j <= number; j += 2) {
|
||||
if (number % j === 0) {
|
||||
return false
|
||||
}
|
||||
}
|
||||
return true
|
||||
}
|
||||
|
||||
const calculateSumOfPrimeNumbers = (maxNumber) => {
|
||||
let sum = 0
|
||||
for (let i = maxNumber - 1; i >= 2; i--) {
|
||||
if (isPrime(parseInt(i)) === true) {
|
||||
sum += i
|
||||
}
|
||||
}
|
||||
return sum
|
||||
}
|
||||
export { calculateSumOfPrimeNumbers }
|
16
Project-Euler/test/Problem10.test.js
Normal file
16
Project-Euler/test/Problem10.test.js
Normal file
@ -0,0 +1,16 @@
|
||||
import { calculateSumOfPrimeNumbers } from '../Problem10'
|
||||
|
||||
describe('checkAnagram', () => {
|
||||
it('Return the sum of prime numbers upto but less than 14', () => {
|
||||
const SUT = calculateSumOfPrimeNumbers(14)
|
||||
expect(SUT).toBe(41)
|
||||
})
|
||||
it('Return the sum of prime numbers upto but less than 10', () => {
|
||||
const SUT = calculateSumOfPrimeNumbers(10)
|
||||
expect(SUT).toBe(17)
|
||||
})
|
||||
it('Return the sum of prime numbers upto but less than 100', () => {
|
||||
const SUT = calculateSumOfPrimeNumbers(100)
|
||||
expect(SUT).toBe(1060)
|
||||
})
|
||||
})
|
Reference in New Issue
Block a user