Context:
So far, I’ve been “writing” Ruby scripts to learn the basics. Now I want
to use O-O such as class instantiation. Some of my attempts work pretty
well, but the following one has been frustrating me for a while. I get
the following error to my really simple program (below):
/Users/marcc/.rvm/rubies/ruby-2.1.0/bin/ruby -e
$stdout.sync=true;$stderr.sync=true;load($0=ARGV.shift)
/Users/marcc/RubymineProjects/Tests/adder.rb
Enter first number:
34
Enter second number:
23
/Users/marcc/RubymineProjects/Tests/adder.rb:5:in initialize': wrong number of arguments (0 for 2) (ArgumentError) from /Users/marcc/RubymineProjects/Tests/adder.rb:20:in
new’
from /Users/marcc/RubymineProjects/Tests/adder.rb:20:in <top (required)>' from -e:1:in
load’
from -e:1:in `’
Process finished with exit code 1
Here is my code:
Add numbers from user input
class Adder
def initialize(n1, n2)
@n1 = n1
@n2 = n2
end
def calculate_sum(n1, n2)
n1 + n2
end
end
puts 'Enter first number: ’
n1 = gets.chomp
puts 'Enter second number: ’
n2 = gets.chomp
my_sum = Adder.new
my_sum.calculate_sum(n1, n2)
puts my_sum