坚持使用LearnStreet Ruby培训。简单的Ruby代码第5课

时间:2013-03-25 23:18:51

标签: ruby methods

尝试使用新的LearnStreet在线教程学习Ruby。

你现在可以写一个方法add_interest!在帐户对象上,它占用一个参数百分比并将该余额百分比添加到帐户?

提示2 使用参数10调用方法。

提示1 百分比计算 - (@balance *百分比)/ 100

我的尝试:

def account.add_interest!(percentage)
  (@balance * percentage)/100
end

account.add_interest!(10)

我错过了什么?

4 个答案:

答案 0 :(得分:0)

您似乎需要设置@balance。您的方法add_interest!仅返回值,但不会将@balance实例变量设置为新值。

def add_interest!(percentage)
  interest = (@balance * percentage)/100
  @balance = @balance + interest
end

可能会更好地工作。

在方法的末尾添加一个bang !是与其他Ruby开发人员进行通信的常用方法,该方法会做一些令人惊讶的事情,比如永久改变一个对象。

答案 1 :(得分:0)

我对Ruby很陌生,但只想插话。如果您有任何疑问,请告诉我。我敢肯定这可以重构。

class Account
  def self.add_interest_to_current_balance(balance, percentage)
    percentage_amount_in_dollars = (percentage * balance)/(100)
    percentage_amount_in_dollars + balance
  end
end

puts Account.add_interest_to_current_balance(500, 10) #should return 550

答案 2 :(得分:0)

100%在learnstreet上工作

def account.add_interest!(percentage)
     @balance = @balance + (@balance * percentage)/100
end

account.add_interest!(10)

我也被困在它之前:D

答案 3 :(得分:0)

这个答案对我有用,试一试:

def add_interest!(percentage)

  interest = (@balance * percentage)/100

  @balance = @balance + interest

end

account.add_interest!(10)