Go : Function for Matrix Multiplication for any order

func mult_mat(a [][]float64, b [][]float64) [][]float64 {

        c := [][]float64{}

if len(a[0]) != len(b) {

fmt.Println("Orders not Matrching! Can not be multiplied!")

} else {

for i := 0; i < len(a); i++ {

matsum := []float64{}

for j := 0; j < len(b[0]); j++ {

sum := 0.00

for k := 0; k < len(b); k++ {

fmt.Println("Mat_a[", i, "][", k, "] = ", a[i][k])

fmt.Println("Mat_b[", k, "][", j, "] = ", b[k][j])

sum = sum + a[i][k]*b[k][j]

}

matsum = append(matsum, sum)

fmt.Println("Matsum = ", matsum)

}

c = append(c, matsum)

}

}

return c

}