大家好,我一直想知道如何让用户在haskell中定义矩阵的字段(行,列)。
例如,用户应输入字段的值,而不是用户应输入矩阵。如果用户输入更多值,那么他在字段中定义的内容比程序应该显示异常。
(例如maxIndex=3 matrix [[1,2,3],[4,3,5],[3,7,8],[5,6,8]] -> Exception:Out of range
)
答案 0 :(得分:1)
定义一个行为方式的自有类型?
data Matrix = Matrix [[Int]] Int {-rows-} Int {-columns-}
-- constructor / accessor functions that do bounds checking
链表是非常可怕的代表矩阵顺便说一句。如果你真的需要这样的东西,你应该查看现有的包,如hmatrix。