2015-09-05 84 views
0

我是ruby的新手,刚刚测试了如何使用用户的两个变量输入来定义方法。目前,它采取的值,但它什么都没有返回。Ruby on Rails方法什么都不返回

有什么我在这里失踪?

puts "Tell me what you want to print." 
     word = gets.chomp 

puts "How many times do you want it printed?" 
     number = gets.to_i 

def print_x_times(word) 
    i = 0 
    while i < number 
     puts(word) 
    i += 1 
    end 
end 

回答

1

这里有几处:

  • 您已经定义了一个新的方法,但是您尚未调用它。您可能使用类似IRB的方式来交互式地玩,但事实仍然是,您只能定义该方法。

  • 你会迷惑自己,如果你使用wordnumber作为变量法里面,因为他们不能保证为那些你已经定义之外它相同。

如果你想两个值传递给方法,那么你必须指定两个参数:

def print_x_times(word, number) 
    # code 
end 

......那么,你居然去调用一个您的变量它。

print_x_times(word, number) 
1

你应该通过数作为参数传递给函数print_x_times为您做词

而且,该代码定义功能,但不调用它,你应该把它太

1

您这里有两个问题...

  1. 您需要定义两个参数,文字和数字的方法。
  2. 然后你需要用你从用户输入中得到的两个参数来调用这个方法。