2017-10-08 3 views
0
invalidset :: Int -> Int -> Int -> [Int] 

invalidset _ 0 _ = [] 
invalidset 0 _ _ = [] 
invalidset n k 0 = [ z | z <- [1..n], mod z k == 1] 
invalidset n k x = [ z |z <- (validset n k (x-1)) , mod (z-1) k == mod(head(invalidset n k (x-1)) k ] 


validset :: Int -> Int -> Int -> [Int] 

validset _ 0 _ = [] 
validset 0 _ _ = [] 
validset n k 0 = [x | x <-[1..n], mod x k /= 1 ] 
validset n k x = [z | z <- validset n k (x-1) , elem z (invalidset n k x) == False ] 

Lorsque je charge ce fichier dans GHCi, il est écrit "Erreur d'analyse à l'entrée"] dans la ligne 6: 104.Erreur d'analyse dans Hakell

(Il est dire erreur d'analyse dans la ligne de définition de "invalidset n k x")

Merci à l'avance.

+2

Il vous manque un ')' d'après ce que je peux dire. –

Répondre

1

Juste un missmatch ):

invalidset n k x = [ z |z <- (validset n k (x-1)) , mod (z-1) k == mod(head(invalidset n k (x-1))) k ] 

Un plus ) après (x-1))

Here vous l'avez en cours d'exécution.