티스토리 뷰

Hobby/Code

[ruby] Very simple class for dessert

생각많은 소심남 2014. 5. 19. 16:24

edX ESaaS 숙제 두번째는 class를 만드는 문제였는데 getter와 Setter, 그리고 inherited class를 생성할 수 있는지를 물어보는 문제가 제시되었다. 아마 기본문법을 익힌 사람이라면 금방 했을듯.


#!/usr/bin/env ruby
class Dessert
  def initialize(name, calories)
    @name = name
    @calories = calories
  end

  def name
    @name
  end

  def calories
    @calories
  end

  def name=(new_name)
    if new_name.empty?
      raise ArgumentError, 'new_name should be string'
    else
      @name=new_name
    end
  end

  def calories=(new_calories)
      @calories=new_calories
  end

  def healthy?
    if calories < 200
      return true
    else
      return false
    end
  end

  def delicious?
    return true
  end
end

class JellyBean < Dessert
  def initialize(flavor)
    @flavor = flavor
    @calories = 5
  end

  def name
    @name=@flavor + " jelly bean"
  end

  def flavor
    @flavor
  end

  def delicious?
    if @flavor == "licorice"
      return false
    else
      return true
    end
  end 

end


'Hobby > Code' 카테고리의 다른 글

[C] fifteen game  (0) 2014.05.26
[C] vigenere cipher  (1) 2014.05.25
[C] Caesar Cipher  (1) 2014.05.25
[ruby] Rock-Paper-Scissors class  (0) 2014.05.19
[Ruby] Palindrome, dictionary, anagram  (0) 2014.05.18
[python] count inversion with mergesort  (0) 2014.05.18
[C] n squared matrix 덧셈  (0) 2014.05.14
댓글