Hello , Ruby!

作者: 极客人 | 来源:发表于2016-12-12 15:39 被阅读659次

    Question

    Write a program that outputs the string representation of numbers from 1 to n.
    But for multiples of three it should output “Fizz” instead of the number and for the multiples of five output “Buzz”. For numbers which are multiples of both three and five output “FizzBuzz”.

    Answer

    程序中主要使用了

    • for i in start .. end循环结构,也可以用 times,while实现
    • if then else 选择结构
    • % 求余运算
    • and 与逻辑运算
    • 数组<<运算符 :数组元素追加,ruby的数组比较灵活,声明时可以不申明大小。
    • 方法定义:def function_name(args,...) ... end
    # @param {Integer} n
    # @return {String[]}
    def fizz_buzz(n)
        result = Array.new()
        for i in 1 .. n
            if i % 3 == 0 and i % 5==0 then
              result << "FizzBuzz"
            else 
                if i % 3 == 0 then
                  result << "Fizz"
                else 
                    if i % 5 == 0 then
                    result << "Buzz"
                    else
                    result << "#{i}"
                    end
                end
             end
        end
        return result
    end
    

    相关文章

      网友评论

      • 6d96978eeefb:进度很快,赞
        Pursue:哇,好快。不过其实Ruby是不需要return的,最后一行是什么就return什么,哈哈。
        极客人: @TW李鹏 😁
        极客人: @TW李鹏 😁

      本文标题:Hello , Ruby!

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