首页 > 试题广场 >

流程控制

[编程题]流程控制
  • 热度指数:102596 时间限制:C/C++ 2秒,其他语言4秒 空间限制:C/C++ 256M,其他语言512M
  • 算法知识视频讲解
实现 fizzBuzz 函数,参数 num 与返回值的关系如下:
1、如果 num 能同时被 3 和 5 整除,返回字符串 fizzbuzz
2、如果 num 能被 3 整除,返回字符串 fizz
3、如果 num 能被 5 整除,返回字符串 buzz
4、如果参数为空或者不是 Number 类型,返回 false
5、其余情况,返回参数 num

输入描述:
15


输出描述:
fizzbuzz
示例1

输入

15

输出

fizzbuzz
推荐

能否整除即余数是否为0,则使用%运算符。使用if-elseif结构,只要某一条匹配,则下面的不会在进行判断。判断num是否为Number,可以用typeof运算符,返回的是字符串。

function fizzBuzz(num) {
    if(num%3 == 0 && num%5 == 0)
        return "fizzbuzz";
    else if(num%3 == 0)
        return "fizz";
    else if(num%5 == 0)
        return "buzz";
    else if(num == null || typeof num != "number")
        return false;
    else return num;
}


编辑于 2015-08-18 21:02:07 回复(37)
这不简单的跟放了个屁一样
发表于 2024-05-14 18:52:48 回复(0)
function fizzBuzz(num) {
 if(typeof num!=='number') return false
    let str =''
 if(num%3===0) str+='fizz'
 if(num%5===0) str+='buzz'
return str?str:num
}

发表于 2023-06-27 10:27:53 回复(0)
        function fizzBuzz(num) {
       
/* 
描述
实现 fizzBuzz 函数,参数 num 与返回值的关系如下:
1、如果 num 能同时被 3 和 5 整除,返回字符串 fizzbuzz
2、如果 num 能被 3 整除,返回字符串 fizz
3、如果 num 能被 5 整除,返回字符串 buzz
4、如果参数为空或者不是 Number 类型,返回 false
5、其余情况,返回参数 num
示例1
输入:
15
复制
输出:
fizzbuzz
*/
if(num%15==0){
    return "fizzbuzz"
}
else if(num%3==0){
    return "fizz"
}
else if(num%5==0){
    return "buzz"
}
else if((num==null)||(typeof(num)!=="number")){
    return false
}
else{
    return num
}


}
发表于 2023-05-11 21:28:15 回复(0)
function fizzBuzz(num) {
    if(num%3==0&&num%5==0){
        return "fizzbuzz"
    }else if(num%3==0){
        return "fizz"
    }else if(num%5==0){
        return "buzz"
    }else if(num==null||typeof num!=="number"){
        return false
    }else{
        return num 
    }
}
发表于 2023-03-22 22:20:45 回复(0)
function fizzBuzz(num) {

     if(num%3==0 && num%5==0){
     return  'fizzbuzz'
   }
   if(num%3==0){
     return 'fizz'
   }
   if(num%5==0){
     return 'buzz'
   }
    
   if(!num || typeof(num)!=='number'){
     return false
   }
    else {
        return num
    }
   


    
}
发表于 2023-03-21 11:55:13 回复(0)
 function fizzBuzz(num) {

        if (num % 3 == 0 && num % 5 == 0) {
            return "fizzbuzz"
        } else if (num % 3 == 0) {
            return "fizz"
        } else if (num % 5 == 0) {
            return "buzz"
        } else if (num == '' || typeof num != "number") {
            return false
        } else {

            return num
        }
    }
发表于 2023-02-13 18:51:41 回复(0)
 function fizzBuzz(num) {
            if (num % 5 === 0 && num % 3 == 0) return "fizzbuzz"
            else if (num % 3 == 0) return "fizz"
            else if (num % 5 == 0) return "buzz"
            else if(isNaN(num) || !num)return false
            return num
        }
发表于 2023-01-12 17:43:05 回复(0)

为什么num=15时
num%3===num%5===0
这个判断条件返回的是false啊

function fizzBuzz(num) {
  if (typeof num !== "number" || num === undefined) return false;
  return num % 3 === 0 && num % 5 === 0
    ? "fizzbuzz"
    : num % 3 === 0
    ? "fizz"
    : num % 5 === 0
    ? "buzz"
    : num;
}
发表于 2022-10-27 09:20:15 回复(0)
function fizzBuzz(num) {
    if(num%3 === 0 && num %5 === 0)
          {
              return 'fizzbuzz'
          }
      else if(num%3 === 0)
          {
              return 'fizz'
          }
      else if(num%5 === 0)
          {
              return 'buzz'
          }
      else if(num === undefined || Object.prototype.toString.call(num)!== '[object Number]' )
          {
              return false
          }
      else
          {
              return num
          }
}
发表于 2022-10-25 10:55:51 回复(0)
为什么几乎同样的代码 别人运行时间小于一秒 我的大于三秒 前面几题也是我的基本上都是两秒左右
发表于 2022-09-07 11:41:27 回复(0)
function fizzBuzz(num) { if (typeof num!=='number'){ return false  }else { return num%15===0?'fizzbuzz':num%3===0?'fizz':num%5===0?'buzz':num
  }
}
发表于 2022-09-01 15:42:02 回复(0)
function fizzBuzz(num) {
    if(num == null || typeof num !== 'number') return false;
    if(num % 3 === 0 && num % 5 === 0) return 'fizzbuzz';
    else if(num % 3 === 0) return 'fizz';
    else if(num % 5 === 0) return 'buzz';
    else  return num;
}

发表于 2022-08-19 16:01:50 回复(0)
function fizzBuzz(num) {
    if (num == null || isNaN(num)) {
        return false
    }
    let a = (num >= 3) && (!(num % 3))
    let b = (num >= 5) && (!(num % 5))
    if (a && b) {
        return 'fizzbuzz'
    }
    if (a) {
        return 'fizz'
    }
    if (b) {
        return 'buzz'
    }
    return num
}

发表于 2022-07-28 22:46:32 回复(0)
function fizzBuzz(num) {
    return num === null || typeof num !== 'number' ? false
         : num % 3 === 0 && num % 5 === 0 ? 'fizzbuzz'
         : num % 3 === 0 ? 'fizz'
         : num % 5 === 0 ? 'buzz'
         : num
}

发表于 2022-07-14 00:26:44 回复(0)
真奇葩啊,我在控制台输出的都是false,结果竟然说我输出的是null,牛客这编辑器多少有点坑啊
function fizzBuzz(num) {
    if(num.constructor() !== Number()) return false
    return num%3 === 0 && num%5 === 0 ? 'fizzbuzz' : num%3 === 0 ? 'fizz' : num%5 === 0 ? 'buzz' : num
}

发表于 2022-07-07 11:21:08 回复(1)
function fizzBuzz(num) {
    if( num%3==0 && num%5==0) return  'fizzbuzz'
    else if(num%3==0) return 'fizz'
    else if(num%5==0) return 'buzz'
    else if(!num||typeof num !== 'number') return false
    else return num
}

发表于 2022-06-07 20:34:00 回复(0)
function fizzBuzz(num) {
        let reg = /^\d+\./
        let fizz = 'fizz'
        let buzz = 'buzz'
        let a = num / 3
        if (typeof num != 'number') return false
        if (reg.test(num / 3) == false && reg.test(num / 5) == false) {
            console.log(num / 3, num / 5);
            return fizz + buzz
        }
        if (reg.test(num / 3) == false && reg.test(num / 5) == true) {
            console.log(num / 3, num / 5);
            return fizz
        }
        if (reg.test(num / 3) == true && reg.test(num / 5) == false) {
            console.log(num / 3, num / 5);
            return buzz
        }
        return num
    }

发表于 2022-05-11 12:52:36 回复(0)
        //虽然题比较简单 还是要注意逻辑顺序
        function fizzBuzz(num) {
            if ((num === null || num === '' || typeof num !== 'number')) {
                return false
            } else {
                if (num % 3 == 0 && num % 5 == 0) { return 'fizzbuzz'; }
                else if (num % 3 == 0) { return 'fizz'; }
                else if (num % 5 == 0) { return 'buzz'; }
                else { return num }
            }
        }
发表于 2022-04-20 18:48:40 回复(0)
function fizzBuzz(num) {
    if(typeof num != 'number') return false
    if(num%3==0&&num%5==0) return 'fizzbuzz'
    if(num%3==0) return 'fizz'
    if(num%5==0) return 'buzz'
    return num
}
发表于 2022-04-08 09:37:31 回复(0)