class Fraccion

Attributes

denominador[RW]
numerador[RW]

Public Class Methods

new(a, b) click to toggle source
# File lib/fraccion.rb, line 16
def initialize(a, b)   # Constructor de la clase que inicializa la fracción con los valores que se le pasan por parametros
   @numerador = a;
   @denominador = b;
   self.reduce()       # LLamamos a la función que simplifica la fracción al mínimo
end

Public Instance Methods

%(frac) click to toggle source
# File lib/fraccion.rb, line 80
def %(frac)            # Método que  calcula el resto dos fracciones con % y dar el resultado de forma reducida
   Fraccion.new(@numerador % @denominador, frac.numerador % frac.denominador)
end
*(frac) click to toggle source
# File lib/fraccion.rb, line 71
def *(frac)            #Método multiplca dos fracciones con * y dar el resultado de forma reducida
   Fraccion.new(@numerador*frac.numerador,@denominador*frac.denominador)
end
+(frac) click to toggle source
# File lib/fraccion.rb, line 63
def +(frac)                     #Método suma dos fracciones con + y dar el resultado de forma reducida
   Fraccion.new(@numerador*frac.denominador + frac.numerador*@denominador, @denominador*frac.denominador)
end
-(frac) click to toggle source
# File lib/fraccion.rb, line 67
def -(frac)                     #Método resta dos fracciones con - y dar el resultado de forma reducida
   Fraccion.new(@numerador*frac.denominador - frac.numerador*denominador, @denominador*frac.denominador)
end
-@() click to toggle source
# File lib/fraccion.rb, line 59
def -@                 # Sobrecarga del operador - para calcular el opuesto de una fracción
   Fraccion.new(@numerador *-1,@denominador)
end
/(frac) click to toggle source

Método divide dos fracciones con / y dar el resultado de forma reducida

# File lib/fraccion.rb, line 76
def /(frac)     
   Fraccion.new(@numerador*frac.denominador,@denominador*frac.numerador)
end
<(frac) click to toggle source

Método se debe de poder comprobar si una fracion es menor que otra

# File lib/fraccion.rb, line 86
def <(frac)
   
    (@numerador.to_f / @denominador) < (frac.numerador.to_f / frac.denominador)
end
<=(frac) click to toggle source

se debe de poder comprobar si una fracion es menor o igual que otra

# File lib/fraccion.rb, line 97
  def <=(frac)
   
    (@numerador.to_f / @denominador) <= (frac.numerador.to_f / frac.denominador)
end
==(frac) click to toggle source
# File lib/fraccion.rb, line 44
def ==(frac)           # Sobrecarga del metodo == para la comparación de fracciones
   if ((@numerador == frac.numerador) && (@denominador == frac.denominador))
          return true
   end
   return false
end
>(frac) click to toggle source

se debe de poder comprobar si una fracion es mayor que otra

# File lib/fraccion.rb, line 91
def >(frac)
 
    (@numerador.to_f / @denominador) > (frac.numerador.to_f / frac.denominador)
end
>=(frac) click to toggle source

se debe de poder comprobar si una fracion es mayor o igual que otra

# File lib/fraccion.rb, line 102
def >=(frac)
  
    (@numerador.to_f / @denominador) >= (frac.numerador.to_f / frac.denominador)
end
abs() click to toggle source
# File lib/fraccion.rb, line 51
def abs                        # Metodo que nos devuelve una fracción en valor absoluto
   Fraccion.new(numerador.abs, denominador.abs)
end
denom() click to toggle source
# File lib/fraccion.rb, line 32
def denom()            # Método encargado de devolver el valor del denominador
   return @denominador
end
num() click to toggle source
# File lib/fraccion.rb, line 28
def num()              # Método encargado de devolver el valor del numerador
   return @numerador
end
reciprocal() click to toggle source
# File lib/fraccion.rb, line 55
def reciprocal         # Metodo que devuelve una fraccion con el numerador y el denominador invertidos
   Fraccion.new(denominador, numerador)
end
reduce() click to toggle source
# File lib/fraccion.rb, line 22
def reduce()           # Método encargado de la simplificación del objeto fracción que lo llama
   div = Mcd(@numerador, @denominador)
   @numerador = @numerador / div
   @denominador = @denominador / div
end
to_f() click to toggle source
# File lib/fraccion.rb, line 40
def to_f               # Método encargado de mostrar por  la consola la fraccion en formato flotante
   @numerador.to_f / @denominador.to_f
end
to_s() click to toggle source
# File lib/fraccion.rb, line 36
def to_s               # Método encargado de mostrar por consola la fraccion de forma a/b , donde a es el numerador y b es el denominador
   "#{@numerador}/#{@denominador}"
end