From 1ce4168664768c2312df15861c780670c70d2318 Mon Sep 17 00:00:00 2001 From: Thivagar Manickam Date: Thu, 6 May 2021 21:28:40 +0530 Subject: [PATCH] Project euler problem 10 solution and test script --- Project-Euler/Problem10.js | 22 ++++++++++++++++++++++ Project-Euler/test/Problem10.test.js | 16 ++++++++++++++++ 2 files changed, 38 insertions(+) create mode 100644 Project-Euler/Problem10.js create mode 100644 Project-Euler/test/Problem10.test.js diff --git a/Project-Euler/Problem10.js b/Project-Euler/Problem10.js new file mode 100644 index 000000000..0e0e0ef5b --- /dev/null +++ b/Project-Euler/Problem10.js @@ -0,0 +1,22 @@ +// https://projecteuler.net/problem=10 + +const isPrime = (number) => { + let flag = true + for (let j = number - 1; j >= 2; j--) { + if (number % j === 0) { + flag = false + } + } + return flag +} + +const calculateSumOfPrimeNumbers = (maxNumber) => { + let sum = 0 + for (let i = maxNumber - 1; i >= 2; i--) { + if (isPrime(i) === true) { + sum += i + } + } + return sum +} +export { calculateSumOfPrimeNumbers } diff --git a/Project-Euler/test/Problem10.test.js b/Project-Euler/test/Problem10.test.js new file mode 100644 index 000000000..2c1545cd1 --- /dev/null +++ b/Project-Euler/test/Problem10.test.js @@ -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) + }) +})