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