FizzBuzzWhizz

作者: SW_BBK_兰天奇 | 来源:发表于2017-03-30 19:39 被阅读0次

问题:

FizzBuzzWhizz 需求:

when run(3) return 'Fizz'

when run(5) return 'Buzz'

when run(7) return 'Whizz'

when run(3 * 5) return 'FizzBuzz'  //run 的参数为 3和5共同的倍数

when run(3 * 7) return 'FizzWhizz'  //run 的参数为 3和7共同的倍数

when run(5 * 7) return 'BuzzWhizz'  //run 的参数为 5和7共同的倍数

when run(3 * 5 * 7) return 'FizzBuzzWhizz'  //run 的参数为 3、5和7共同的倍数

其余情况:

when run(n) return n  // n 可以为 非 3、5、 7或3、5、7的倍数的数字 如:run(2) return '2'


问题的解决思路:

看到这个问题的时候,首先来对他进行问题分析,然后规划解决方案,再入手开始写代码,最后对其进行测试。

1、我们来看问题,很显然这是一个简单的判断问题,另外就是分多个情况。

2、这个问题的解决方法有很多 ,最简单的就是把他分7种不同的情况然后就if、else if、else if来写,但是这样很麻烦。于是我们就可以观察问题需求中当为3的倍数时输出F,5为B,7为W,而3与5为FB,3与7为FW,5与7为BW,3和5再加7为FBW。我们可以发现输出的结果都是按F、B、W的顺序输出,而且字母间没有间隙,我们就可以用三个if直接对一个数进行判断,只要有相关倍数就输出相关字母。

3、然后就可以完成代码,但其中要分不是3、5、7的倍数的时候直接输出数字,而用else的话else只会与最后一个if形成对立,所以这个时候就可以引入一个p来纠正。于是就有了如下的代码。

4、测试代码的正确性,因为有7种情况,那就引入7个数分别是

3、5、7、 15  、21、  35  、105  、2来测试。结果分别是:

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);

运行结果:

相关文章

  • FizzBuzzWhizz

    本篇仅讨论此题目,若需查看与 javascript 相关信息,请查看本人另一篇文章 javascript 基础入门...

  • FizzBuzzWhizz

    题目描述:FizzBuzzWhizz 需求: when run(3) return 'Fizz'when run(...

  • FizzBuzzWhizz

    经分析该问题主要需要解决一下问题: 1.判断公倍数。2.实现字符串连接解决方法如下:1.依次判断是否是3、5、7的...

  • FizzBuzzWhizz

    需求分析如下: 1.run 的参数为 3、5和7共同的倍数,run 的参数为 5和7共同的倍数...可以转换为nu...

  • FizzBuzzWhizz

    JavaScript 针对那道题,我是这么想的: 先判断是否为3 and 5 and 7的公倍数,若不是接着判断,...

  • FizzBuzzWhizz

    FizzBuzzWhizz 起初考虑的时候觉得rule比较简单,运用最基本的思想,逐个判断条件发现确实太繁杂。做完...

  • FizzBuzzWhizz

    需求: when run(3) return 'Fizz'when run(5) return 'Buzz'whe...

  • FizzBuzzWhizz

    作业要求: 1.通过document.write()方法,将以上需求的每一条调用结果打印出来,结果会在屏幕右边显示...

  • FizzBuzzWhizz

    FizzBuzzWhizz题目需求: when run (3) return 'Fizz'when run(5) ...

  • FizzBuzzWhizz

    黑珍珠号_陈祥梅 题目需求 when run(3) return 'Fizz'when run(5) return...

网友评论

    本文标题:FizzBuzzWhizz

    本文链接:https://www.haomeiwen.com/subject/stmpottx.html