Welcome to the Treehouse Community

Want to collaborate on code errors? Have bugs you need feedback on? Looking for an extra set of eyes on your latest project? Get support with fellow developers, designers, and programmers of all backgrounds and skill levels here with the Treehouse Community! While you're at it, check out some resources Treehouse students have shared here.

Looking to learn something new?

Treehouse offers a seven day free trial for new students. Get access to thousands of hours of content and join thousands of Treehouse students and alumni in the community today.

Start your free trial

Ruby Ruby Objects and Classes Build a Bank Account Class Implement the balance Method

Patrick Shushereba
Patrick Shushereba
10,911 Points

Ruby Bank Account Balance Method

I'm not sure what's wrong with my balance method. The interpreter isn't really giving me feedback, it's just asking me to try again.

bank_account.rb
class BankAccount
  attr_reader :name

  def initialize(name)
    @name = name
    @transactions = []
    add_transaction("Beginning Balance", 0)
  end

  def debit(description, amount)
    add_transaction(description, -amount)
  end

  def credit(description, amount)
    add_transaction(description, amount)
  end

  def add_transaction(description, amount)
    @transactions.push(description: description, amount: amount)
  end
  def balance()
    balance = 0
    @transactions.each do |transaction| 
      balance += transaction
      end
      return balance
  end
end

1 Answer

Justin Horner
STAFF
Justin Horner
Treehouse Guest Teacher

Hello Patrick,

In your balance method you need to access the amount value from the transaction hash using :amount. Your code is currently trying to add an array to a Fixnum.

Accessing the amount value would look like this.

balance += transaction[:amount]

I hope this helps.