題目連結:
題目意譯:
撰寫一個程式去輸出 1 ~ n 的字串表示法。
但是對於 3 的倍數,其輸出應為「Fizz」,而非原本的數字;且對於 5 的倍數,應輸出「Buzz」;對於既是 3 倍數,也是 5 的倍數之數字,輸出「FizzBuzz」
範例測資:
範例:
n = 15,
回傳:
[
"1",
"2",
"Fizz",
"4",
"Buzz",
"Fizz",
"7",
"8",
"Fizz",
"Buzz",
"11",
"Fizz",
"13",
"14",
"FizzBuzz"
]
解題思維:
沒什麼特別的,就是直接用迴圈從 1 跑到 n 。
當跑到數字 i 時,先判斷 i 是否為 3 的倍數而且也是 5 的倍數。如果是就將字串「FizzBuzz」推到結果陣列中;
如果上為非,則判斷 i 是否為 3 的倍數。如果是就將字串「Fizz」推到結果陣列中;
反之,則判斷 i 是不是為 5 的倍數。如果是就將字串「Buzz」推到結果陣列中;
以上皆非者,才將數字轉為字串表示推進結果陣列中。
此次分享到此為止,如有任何更加簡潔的想法或是有說明不清楚之地方,也煩請各位大大撥冗討論。