# Problem 1: Multiples of 3 and 5

## Problem Explanation

• We can find if a number is divisble by another number with the help of `%` modulo operator.
• `num1 % num2` returns `0` if there’s no remainder while doing `num1/num2`.
• Starting from `i = 3` because that’s the first number that’s divisble by 3 or 5, we loop through till the `number` provided.
• If the number is divisible either by 3 or 5, we add that to the variable `sum` and finally return it.

## Solutions

Solution 1 (Click to Show/Hide)
``````function multiplesOf3and5(number) {
let sum = 0,
i = 3;
while (i < number) {
if (i % 3 == 0 || i % 5 == 0) sum += i;
i++;
}
return sum;
}
``````

Solution 2 (Click to Show/Hide)
``````function multiplesOf3and5(number) {
// sum of multiples of 3
const numMultOf3 = Math.floor((number - 1) / 3, 10);
const sum3 = (numMultOf3 * (numMultOf3 + 1) / 2) * 3;

// sum of multiples of 5
const numMultOf5 = Math.floor((number - 1) / 5, 10);
const sum5 = (numMultOf5 * (numMultOf5 + 1) / 2) * 5;

// sum of multiples of 15 (both 3 and 5)
// we need to subtract these because they are added twice
const numMultOf15 = Math.floor((number - 1) / 15, 10);
const sum15 = (numMultOf15 * (numMultOf15 + 1) / 2) * 15;

return sum3 + sum5 - sum15;
}
``````
3 Likes