class Matriz

Attributes

cols[RW]
filas[RW]
matriz[RW]

Public Class Methods

new(m) click to toggle source

Constructor de la matriz

# File lib/Matriz.rb, line 7
def initialize(m)
@filas = m.size
@cols = m[1].size
@matriz = m
end

Public Instance Methods

*(other) click to toggle source

Definición de la sobrecarga del operador *

# File lib/Matriz.rb, line 29
def * (other) 
end
+(other) click to toggle source

Definición de la sobrecarga del operador +

# File lib/Matriz.rb, line 21
def + (other)
end
-(other) click to toggle source

Definición de la sobrecarga del operador -

# File lib/Matriz.rb, line 25
def - (other)
end
comprobar() click to toggle source

Comprueba la matriz y la devuelve según su tipo

# File lib/Matriz.rb, line 45
def comprobar()
   cont_total = 0
   cont_ceros = 0
   @filas.times do |i|                  
      @cols.times do |j|                        
         if @matriz[i][j] == 0
            cont_ceros = cont_ceros + 1
         end
         cont_total = cont_total + 1
      end
   end
   if cont_ceros >= (cont_total * 0.6)
      Matriz_dispersa.new(@matriz)
   else
      Matriz_densa.new(@matriz)
   end
end
max() click to toggle source

Definición de el cálculo del máximo de una matriz

# File lib/Matriz.rb, line 64
def max()
end
min() click to toggle source

Definición de el cálculo del mínimo de una matriz

# File lib/Matriz.rb, line 68
def min()
end
to_s() click to toggle source

Función que imprime la matriz

# File lib/Matriz.rb, line 14
def to_s () 
   @matriz.each do |fila|                       
   puts fila.join(" ")                  
   end
end
traspuesta() click to toggle source

Calcula la traspuesta de una matriz y la devuelve según el tipo que sea

# File lib/Matriz.rb, line 33
def traspuesta ()
   aux_m = Array.new
   @filas.times do |i|
      aux_m[i] = Array.new                      
      @cols.times do |j|
         aux_m[i][j] = @matriz[(@filas-1)-i][(@cols-1)-j]
      end
   end
   Matriz.new(aux_m).comprobar
end