-1
votes

Erreur d'analyse en si instruction: Missing requis Sinon Clause dans le code Haskell

Je reçois «Erreur d'analyse en si instruction: Définition de la clause d'autre requise» à la ligne 202. Je pense que je suis en train d'utiliser la syntaxe correcte si-ele-else pour Haskell. Mais laissez-moi savoir ce qui ne va pas. Merci

​​J'ai essayé de déplacer les différentes déclarations de si, à rien en vain xxx


1 commentaires

Comme l'erreur indique, il vous manque un sinon . Il devrait être avant si (déplacer == 1) .


3 Réponses :


1
votes

C'est ce bit: xxx

Il y a quelques autres choses que je remarque ici. Vérifiez le type de déplacer ; bouge == 0 a un sens? Au lieu d'horriblement imbriqué si / alors / else , HASKELLL fournit un bel interrupteur Switch - Construction, détaillé au bas de Cela vous apprends une page de haskell .


0 commentaires

0
votes

J'ai déplacé le plus secret si déclaration de déclaration, et il semble compiler. Je ne sais pas si cela conserve l'intention originale du programme.

Aussi, getline renvoie une chaîne, mais vous comparez la sortie à un int . Et ++ est la concaténation de chaîne, pas + .

J'espère que cela vous aidera. Bonne chance! xxx


2 commentaires

Il ne conserve probablement pas l'intention originale, maintenant que je le lisez en fait, je vois que le mouvement ne peut pas être égal à "0" et "1".


Merci beaucoup pour votre aide!



0
votes

Utilisation d'un "cas de" construction au lieu d'un "si autre" un:

Comme mentionné par Khuldreseth Na'barya, vous pouvez utiliser un cas de construction. Cela permettrait au cas supplémentaire de ne pas être ni 0 ni 1 pour s'adapter bien.

Il est un peu difficile de remplir les blancs comme nous n'avons pas vu vos types, Mais ce code compile, sous hypothèses raisonnables pour les types d'objets: xxx


0 commentaires