FizzBuzz는 영미권에서 아이들이 나눗셈에 대해 배우기 위해 하는 게임이다. 이 게임은 프로그래밍을 처음 배울 때 조건문에서 다뤄지곤 한다. 때문에 개발자 인터뷰에서 종종 테스트 문제로도 등장한다.
1~100까지 숫자 중 3의 배수는 "Fizz", 5의 배수는 "Buzz", 3과 5의 배수는 "FizzBuzz"로 출력해야 한다. 간단해 보일 수 있지만 노련한 개발자도 때론 잘못 이해하는 경우가 있다고 한다.
for (let i = 1; i <= 100; i++) {
if (i % 15 === 0) {
// 15(3*5)의 배수
console.log("FizzBuzz");
} else if (1 % 3 === 0) {
// 3의 배수
console.log("Fizz");
} else if (1 % 5 === 0) {
// 5의 배수
console.log("Buzz");
} else {
console.log(i);
}
}
for (let i = 1; i <= 100; i++) {
console.log(
(i % 3 ? '' : 'fizz')
+ ( i % 5 ? '' : 'buzz')
|| i
)
}
for (let i = 1; i <= 100; i++) {
let FIZZ = i % 3 == 0;
let BUZZ = i % 5 == 0;
console.log(
FIZZ
? (BUZZ ? "FizzBuzz" : "Fizz")
: (BUZZ ? "Buzz" : i)
)
}
그 외 여러 개발자들의 해결 방법 확인은 👉 여기 👈