def * (other)
aux_m = Array.new
@filas.times do |i|
aux_m[i] = Array.new
@cols.times do |j|
aux_m[i][j] = 0;
end
end
if other.is_a?(Matriz_dispersa)
@filas.times do |i|
other.cols.times do |j|
other.filas.times do |k|
if @matriz[i.to_s+"_"+k.to_s] != nil
if other.matriz[k.to_s+"_"+j.to_s] != nil
aux_m[i][j] += @matriz[i.to_s+"_"+k.to_s] * other.matriz[k.to_s+"_"+j.to_s]
end
end
end
end
end
elsif other.is_a?(Matriz_densa)
@filas.times do |i|
other.cols.times do |j|
other.filas.times do |k|
if @matriz[i.to_s+"_"+k.to_s] != nil
aux_m[i][j] += @matriz[i.to_s+"_"+k.to_s] * other.matriz[k][j]
end
end
end
end
end
Matriz.new(aux_m).comprobar()
end