FizzBuzzWhizz

問(wèn)題:

FizzBuzzWhizz 需求:

when run(3) return 'Fizz'

when run(5) return 'Buzz'

when run(7) return 'Whizz'

when run(3 * 5) return 'FizzBuzz'? //run 的參數(shù)為 3和5共同的倍數(shù)

when run(3 * 7) return 'FizzWhizz'? //run 的參數(shù)為 3和7共同的倍數(shù)

when run(5 * 7) return 'BuzzWhizz'? //run 的參數(shù)為 5和7共同的倍數(shù)

when run(3 * 5 * 7) return 'FizzBuzzWhizz'? //run 的參數(shù)為 3、5和7共同的倍數(shù)

其余情況:

when run(n) return n? // n 可以為 非 3、5、 7或3、5、7的倍數(shù)的數(shù)字 如:run(2) return '2'


問(wèn)題的解決思路:

看到這個(gè)問(wèn)題的時(shí)候,首先來(lái)對(duì)他進(jìn)行問(wèn)題分析,然后規(guī)劃解決方案,再入手開(kāi)始寫(xiě)代碼,最后對(duì)其進(jìn)行測(cè)試。

1、我們來(lái)看問(wèn)題,很顯然這是一個(gè)簡(jiǎn)單的判斷問(wèn)題,另外就是分多個(gè)情況。

2、這個(gè)問(wèn)題的解決方法有很多 ,最簡(jiǎn)單的就是把他分7種不同的情況然后就if、else if、else if來(lái)寫(xiě),但是這樣很麻煩。于是我們就可以觀察問(wèn)題需求中當(dāng)為3的倍數(shù)時(shí)輸出F,5為B,7為W,而3與5為FB,3與7為FW,5與7為BW,3和5再加7為FBW。我們可以發(fā)現(xiàn)輸出的結(jié)果都是按F、B、W的順序輸出,而且字母間沒(méi)有間隙,我們就可以用三個(gè)if直接對(duì)一個(gè)數(shù)進(jìn)行判斷,只要有相關(guān)倍數(shù)就輸出相關(guān)字母。

3、然后就可以完成代碼,但其中要分不是3、5、7的倍數(shù)的時(shí)候直接輸出數(shù)字,而用else的話else只會(huì)與最后一個(gè)if形成對(duì)立,所以這個(gè)時(shí)候就可以引入一個(gè)p來(lái)糾正。于是就有了如下的代碼。

4、測(cè)試代碼的正確性,因?yàn)橛?種情況,那就引入7個(gè)數(shù)分別是

3、5、7、 15 ?、21、 ?35 ?、105 ?、2來(lái)測(cè)試。結(jié)果分別是:

F、B、W、FB、FW、BW、FBW、2


var test = function(num) {??

var p=1;

if(num%3 == 0){??

?p=0;document.write('Fizz');? }

if(num%5 == 0)? ? {p=0;document.write('Buzz'); }

if(num%7 == 0)? ? {p=0;document.write('Whizz'); }

if(p == 1)document.write(num);

document.write("<br>");}

test(3);test(5);test(7);test(15);test(21);test(35);test(105);test(2);

運(yùn)行結(jié)果:

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 本課題要求: when run(3) return 'Fizz'when run(5) return 'Buzz'...
    TW_羊咩咩_伍文杰閱讀 574評(píng)論 6 3
  • 需求分析如下: 1.run 的參數(shù)為 3、5和7共同的倍數(shù),run 的參數(shù)為 5和7共同的倍數(shù)...可以轉(zhuǎn)換為nu...
    今站閱讀 316評(píng)論 4 1
  • 題目要求: /* FizzBuzzWhizz 需求: when run(3) return 'Fizz' when...
    未小琴閱讀 977評(píng)論 5 2
  • JavaScript 針對(duì)那道題,我是這么想的: 先判斷是否為3 and 5 and 7的公倍數(shù),若不是接著判斷,...
    TW_1024_趙梓君閱讀 371評(píng)論 8 2
  • 1.問(wèn)題引入 FizzBuzzWhizz 需求:when run(3) return 'Fizz'when run...
    TW_BBK_李江閱讀 671評(píng)論 9 3

友情鏈接更多精彩內(nèi)容