# prac0204.rb
class Matrix
def initialize(a=[[1,0,0],[0,1,0],[0,0,1]])
@m = a
@size = 3
end
attr_accessor :m
def add(x)
ans = Matrix.new
for i in 0...@size
for j in 0...@size
ans.m[i][j] = x.m[i][j]
end
end
return ans
end
def mult(x)
ans = Matrix.new
for i in 0...@size
for j in 0...@size
sum = 0
for k in 0...@size
sum += @m[i][k] * x.m[k][j]
end
ans.m[i][j] = sum
end
end
return ans
end
def show
for i in 0...@size
for j in 0...@size
printf(" %5.2f",@m[i][j])
end
print "\n"
end
end
end
#
x = Matrix.new([[1,2,3],[1,-1, 2],[-3,-4,1]])
y = Matrix.new([[-3,-2,-1],[2,-1,2],[3,4,4]])
x.mult(y).show