每天进步一点点------检查循环学得好不好的小测验"FizzBuzz"

6 篇文章 0 订阅

最近在学python,发现这果然是个很方便很贴心的语言,简直不能更好了,顺便就把代码贴在一个帖子好了

import math
for i in range(1,100):
    if i%15==0:
        print "FizzBuzz"
    elif i%3==0:
        print "Fizz"
    elif i%5==0:
        print "Buzz"
    else:
        print i

调用了math模块之后就可以很方便的使用一些数学的函数,是不是特别简单?



今天发现了一个很有意思的题目,据说有很多老资格的coder都不能在5分钟内写出来,我看到google上有很多高手都用别的语言写,我只会JS,所以就先用if / else 试了一下,发现特别繁琐,然后想起上个礼拜学的switch,就试了一下,不过有点问题,后来请教高手改正了,不过还不是很理解原因.需要注意的是要求严格的case必须写在前面,要不然循环到宽松了case就会自动匹配了,说得浅显点就是如果把单独被3和5整除写在前面就不会再去匹配同时被3和5整除了,我都有试过.

代码如下:

for ( var num = 1 ; num < 101 ; num ++){
switch (true) {
case num%3===0 && num%5===0 :
console.log ("FizzBuzz");
break ;
case num%3===0 :
console.log ("Fizz");
break ;
case num%5===0 :
console.log ("Buzz");
break ;
default :
console.log (num);
}
}


下面是题目,各位大神可以试试看写一段代码要多久?

在一个范围内,比如1---100,能被3整除的显示"Fizz",能被5整除的显示"Buzz",能同时被3和5整除的则显示"FizzBuzz",其余的不变.


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值