Class: Square

Inherits:
Object
  • Object
show all
Defined in:
lib/shapelib.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(side) ⇒ Square

Returns a new instance of Square.



5
6
7
8
9
10
# File 'lib/shapelib.rb', line 5

def initialize(side)
  @side = side
  @area = side ** 2
  @perimiter = side * 4
  @diagonal = Math.sqrt(side ** 2 + side ** 2)
end

Instance Attribute Details

#areaObject (readonly)

Returns the value of attribute area.



3
4
5
# File 'lib/shapelib.rb', line 3

def area
  @area
end

#diagonalObject (readonly)

Returns the value of attribute diagonal.



3
4
5
# File 'lib/shapelib.rb', line 3

def diagonal
  @diagonal
end

#perimiterObject (readonly)

Returns the value of attribute perimiter.



3
4
5
# File 'lib/shapelib.rb', line 3

def perimiter
  @perimiter
end

Instance Method Details

#side=(val) ⇒ Object



12
13
14
15
16
# File 'lib/shapelib.rb', line 12

def side=(val)
  @side = val
  @area = @side ** 2
  @perimiter = @side * 4
end

#to_sObject



18
19
20
# File 'lib/shapelib.rb', line 18

def to_s
  "Square: #{@side}"
end