Matrix multiplication: Difference between revisions

Content added Content deleted
(add BQN)
(→‎Haskell :: With List and without transpose: Fixed compile failure by adding final closing bracket. Applied Ormolu.)
Line 3,248: Line 3,248:
mult xs [] _ = xs
mult xs [] _ = xs
mult xs _ [] = xs
mult xs _ [] = xs
mult [] (zs:zss) (y:ys) = mult (map (y *) zs) zss ys
mult [] (zs : zss) (y : ys) = mult (map (y *) zs) zss ys
mult xs (zs:zss) (y:ys) = mult (zipWith (\u v -> u + v * y) xs zs) zss ys
mult xs (zs : zss) (y : ys) =
mult
(zipWith (\u v -> u + v * y) xs zs)
zss
ys


main :: IO ()
main :: IO ()
main =
main = mapM_ print $ multiply [[1, 2], [3, 4]] [[-3, -8, 3], [-2, 1, 4]</lang>
mapM_ print $
multiply
[[1, 2], [3, 4]]
[[-3, -8, 3], [-2, 1, 4]]</lang>
{{out}}
{{out}}
<pre>[-7,-6,11]
<pre>[-7,-6,11]