Problem
- If we list all the natural numbers below 10 that are multiples of 3 or 5, we get 3, 5, 6, and 9.
- 10 미만의 3 또는 5의 배수(multiples)인 모든 자연수(natural numbers)를 나열하면 3, 5, 6, 9를 얻는다.
- The sum of these multiples is 23.
- Finish the solution so that it returns the sum of all the multiples of 3 or 5 below the number passed in.
- 전달된 숫자 미만의 3 또는 5의 모든 배수의 합을 반환한다.
- If the number is a multiple of both 3 and 5, only count it once.
- 숫자가 3과 5의 배수이면 한 번만 계산한다.
Solution 01
function sumMultiples(n) {
let result = 0;
for (let i = 0; i < n; i++) {
if (i % 3 === 0 || i % 5 === 0) {
result += i;
}
}
return result;
}
sumMultiples(10); // 23 (3 + 5 + 6 + 9)
sumMultiples(15); // 45 (3 + 5 + 6 + 9 + 10 + 12)
Solution 02
function sumMultiples(n) {
let result = 0;
for (let i = 0; i < n; i++) {
result += i % 3 ? (i % 5 ? 0 : i) : i;
}
return result;
}
sumMultiples(10); // 23 (3 + 5 + 6 + 9)
sumMultiples(15); // 45 (3 + 5 + 6 + 9 + 10 + 12)