Euler 1 and 2
Solution to Project Euler 1 and 2
by bshourd
JavaScript
/*
* http://projecteuler.net/problem=1
* If we list all the natural numbers below 10 that are multiples of 3 or 5, we get 3, 5, 6 and 9. The sum of these multiples is 23.
* Find the sum of all the multiples of 3 or 5 below 1000.
*/
var euler1 = function(div1, div2, highest) {
var sum = 0;
for (var i = 1; i < highest; i++) {
if ((i % div1 === 0) || (i % div2) === 0) {
sum += i;
}
}
return sum;
};
console.log(euler1(3,5,1000));
/*
* http://projecteuler.net/problem=2
* Each new term in the Fibonacci sequence is generated by adding the previous two terms. By starting with 1 and 2, the first 10 terms will be:
* 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, ...
* By considering the terms in the Fibonacci sequence whose values do not exceed four million, find the sum of the even-valued terms.
*/
var euler2 = function(max) {
var isEven = function(num) {
return (num % 2 === 0);
};
var fib = {
a : 1,
b : 2,
c : 3
};
var nextFib = function() {
var a = fib.b;
var b = fib.c;
fib.a = a
fib.b = b
fib.c = a + b;
};
var sum = 2;
while (fib.c < max) {
if (isEven(fib.c)) {
sum += fib.c;
}
nextFib();
}
return sum;
};
console.log(euler2(4000000));