/ / Kann der Benutzer das Feld der Matrix in Haskell definieren lassen? - Haskell, Matrix, Feld

Ist es möglich, dass der Benutzer das Feld der Matrix in Haskell definiert? - Haskell, Matrix, Feld

Hallo Leute, ich habe mich gefragt, wie ich den Benutzer das Feld (Zeile, Spalte) der Matrix in Haskell definieren kann.

Beispielsweise sollte der Benutzer einen Wert für das Feld eingeben und der Benutzer sollte eine Matrix eingeben. Wenn der Benutzer einen höheren Wert eingibt, sollte der von ihm definierte Wert im Feld eine Ausnahme enthalten.

(z.B. maxIndex=3 matrix [[1,2,3],[4,3,5],[3,7,8],[5,6,8]] -> Exception:Out of range)

Antworten:

1 für die Antwort № 1

Einen eigenen Typ definieren, der sich so verhält?

data Matrix = Matrix [[Int]] Int {-rows-} Int {-columns-}

-- constructor / accessor functions that do bounds checking

Verknüpfte Listen sind ziemlich schlecht für die Darstellung von Matrizen. Wenn Sie so etwas wirklich brauchen, sollten Sie sich vorhandene Pakete wie anschauen Hmatrix.