Skip to content

Instantly share code, notes, and snippets.

@maxplomer
Created September 16, 2014 21:59
Show Gist options
  • Save maxplomer/fa139bbeaf8512446dbb to your computer and use it in GitHub Desktop.
Save maxplomer/fa139bbeaf8512446dbb to your computer and use it in GitHub Desktop.
employee manager classes problem
class Employee
attr_accessor :name, :title, :salary, :boss
def initialize
@name
@title
@salary
@boss
end
def bonus(multipler)
@salary * multipler
end
end
class Manager < Employee
attr_accessor :employees
def initialize
@employees = []
end
def bonus(multipler)
@employees.inject(0) do |sum,employee|
sum + employee.salary
end * multipler
end
end
pres = Manager.new; pres.salary = 1000000
vice_pres = Manager.new; vice_pres.salary = 100000
mail_room_person = Employee.new; mail_room_person.salary = 10000
pres.employees << vice_pres
vice_pres.employees << mail_room_person
p pres.bonus(1)
p vice_pres.bonus(1)
p mail_room_person.bonus(1)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment