Interview Question #7:
Write a function that will print from 1 to 100. Print 'fizz' for multiples for 3. Print 'buzz' for multiples of 5. Lastly, print 'fizzbuzz' for multiples of 3 and 5.🤔
If you need practice, try to solve this on your own. I have included 2 potential solutions below.
Note: There are many other potential solutions to this problem.
Feel free to bookmark 🔖 even if you don't need this for now. You may need to refresh/review down the road when it is time for you to look for a new role.
Code if you want to play around with it: https://codepen.io/angelo_jin/pen/MWobgqj
Sample Output:
Solution #1: if-else (Recommended)
- A straight-forward approach using the good old if-else statements. It is nice because it is easy to implement and you can code this while you are explaining to the interviewer what is happening statement per statement.
for (let i = 1; i <= 100; i++) {
// Is the number a multiple of 3 and 5?
if (i % 3 === 0 && i % 5 === 0) {
console.log('fizzbuzz')
} else if (i % 3 === 0) {
// Is the number a multiple of 3?
console.log('fizz')
// Is the number a multiple of 5?
} else if (i % 5 === 0) {
console.log('buzz')
} else {
console.log(i)
}
}
Solution #2: Nice, fancy one-liner
- I would stay away from this on an actual interview as you would look like a leetcode material/master. You may mention that you saw a one-liner solution using couple of ternary and you are aware. Might get a bonus for that.
for(let i=0;i<100;)console.log((++i%3?'':'fizz')+(i%5?'':'buzz')||i)
Happy coding and good luck if you are interviewing!
If you want to support me - Buy Me A Coffee
In case you like a video instead of bunch of code 👍😊
Top comments (6)
All are nice and easy to learn and implement
I hate if..else, so i came up with this.
i try to limit if/else as well if possible. Solution looks good. O(n)
Nice and thanks for sharing! These one-liner are nice and amazing to see but not worth to spend much time and energy on as one will not present them on an actual interview.
If I go on an interview and get asked to code Fizz Buzz, i would still stick to the old if-else solution. Do you feel the same?
looks good to me! thanks for sharing.
i hardly use old school
for
iterate as well especially there are other better alternatives.Some more, but avoiding using the conditional operator...
Some comments have been hidden by the post's author - find out more