没有方法错误 - Ruby计算器

时间:2015-07-10 02:01:08

标签: ruby

基于Ruby Monk Calculator练习,我试图建立一个可以加减的简单计算器:

class Calculator  
 def add(a,b)
   a + b 
 end

 def subtract(a,b)
   a - b 
 end
end

puts "input first integer"
a = gets.chomp.to_i

puts "input second integer"
b = gets.chomp.to_i

puts "add or subtract?"
response = gets.chomp.downcase

if response == "add" 
  Calculator.add(a,b)
else response == "subtract"
  Calculator.subtract(a,b)
end

当我运行代码时,我不断得到“NoMethodError”' - 方法'添加'和'减去'未定义。我不明白为什么我会收到此错误,并且想知道我是否错误地调用了该方法。

1 个答案:

答案 0 :(得分:4)

您在实例级别而不是类级别定义了方法。使用

def self.add(a,b)
  a + b 
end

或创建Calculator

的实例
calc = Calculator.new
calc.add(a,b)