この関数を使用すると、文字列のリストを入力できます。この関数は長さをとり、ユーザーが長さ1行以上の行を入力できるようにします。次に、各行をチェックして、元の行と同じ長さになっていることを確認します。コード:Haskell readLn解析エラーなし
readme :: IO [Line]
readme = do
line <- readLn
let count = length line
lines <- replicateM (count-1) $ do
line <- readLn
if length line /= count
then fail "too long or too short"
else return line
return $ line : lines
行は文字列です。 *例外:ユーザー・エラー(Prelude.readIO:なしパース)私は機能と入力を実行しようとすると
..私は、次の取得[「12」、「13」]と言うと、私はできませんなぜ、どのようなアイデアを把握する?
基本的にreadmeは、行の長さが同じであることを確認するために数独四角形の入力を確認するために使用されます。["1"、 "2"、 "3"]を入力すると、それは3x3グリッドになります)、どちらも長さ3でなければなりません。 – gdrules
解決しました - ありがとう:) – gdrules