0
    element ::Int->Int->[[Int]]-> Int
    element z s m= m!!z!!s
    maxIndex :: Int
    maxIndex = 6  

    matrix :: [[Int]] -> Int -> Int -> Int -> Int
    matrix a row column maxIndex = if maxIndex < length a then error "Out of range"
         else if (row-1<0 || row-1>maxIndex)||(column-1<0 || column-1>maxIndex) then error "Out of range"
         else element (row-1) (column-1) a

我在哪里犯错?我希望我的程序采用我的 maxIndex 常量,因此用户不必输入 maxIndex 的值?

4

1 回答 1

1

maxIndex已经是矩阵的词法范围中定义的标识符。就像 element 一样,你不需要做任何特别的事情来使用它,所以你可以说:

matrix :: [[Int]] -> Int -> Int -> Int
matrix a row column = ...
于 2013-04-22T11:05:47.327 回答