我想重复一个单词可选的次数。但是,当我运行我的程序时,它似乎没有超过input[1].times do line
。
CODE:
def repeat(*input)
sentence = []
if input.length == 1
"#{input[0]} #{input[0]}"
else
input[1].times do
sentence.push(input[0])
sentence.join(" ")
end
end
end
puts repeat("Hey!")
puts repeat("Hey", 3)
输出:
Hey! Hey!
3
答案 0 :(得分:0)
你需要返回句子,并且想要在时间循环之外加入句子。
def repeat(*input)
sentence = []
if input.length == 1
"#{input[0]} #{input[0]}"
else
input[1].times do
sentence.push(input[0])
end
sentence = sentence.join(" ")
return sentence
end
end
答案 1 :(得分:0)
这是一种更为紧凑的方式:
def say_hey(word, repeat=1)
puts ([word]*repeat).join(' ')
end
say_hey("Hey!")
#=> Hey!
say_hey("Hey!", 14)
#=> Hey! Hey! Hey! Hey! Hey! Hey! Hey! Hey! Hey! Hey! Hey! Hey! Hey! Hey!