IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Haskell Discussion :

Problème des blocs if else if successifs


Sujet :

Haskell

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    113
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 113
    Par défaut Problème des blocs if else if successifs
    Bonjour,
    C'est la première fois que j'ai ce type de message et je ne trouve pas la raison
    ----message : TrianguloidFraction.hs:51:9:
    parse error (possibly incorrect indentation or mismatched brackets)


    Code complet est visible dans mon post précédent.
    Pourriez-vous m'aider svp ? Merci.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
     
    listOfPoints 0 _ _ _ _ _= []
    listOfPoints n b x y m l = point : listOfPoints (n-1) b' x' y' m' l' 
      where
    	b' = b
     
    	if b <= 1/3 
    		then choix1x x y
    		else if b <= 2/3
    			then choix2x x y
    			else choix3x x y
     
    	if b <= 1/3                        --ligne 51
    		then choix1y x y
    		else if b <= 2/3
    			then choix2y x y
    			else choix3y x y	
     
    	m'= round(sqrt((200*x')^2+(133.4*y')^2))
        	l' = 5*m'
        	point = translate (200*x') (133.4*y') (color (myColor (l')) (circle 1.0))

  2. #2
    Membre Expert

    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2013
    Messages
    610
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Finance

    Informations forums :
    Inscription : Avril 2013
    Messages : 610
    Billets dans le blog
    21
    Par défaut
    Euh... je comprends pas ce que tu veux faire là?

    déjà tu écris deux fois la même chose:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    -- 1         if b <= 1/3 
    		then choix1x x y
    		else if b <= 2/3
    			then choix2x x y
    			else choix3x x y
     
    --2	if b <= 1/3                        --ligne 51
    		then choix1y x y
    		else if b <= 2/3
    			then choix2y x y
    			else choix3y x y
    Et juste avant:
    tu viens de substituer b à b', alors pourquoi ne pas écrire tout simplement:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    listOfPoints n b x y m l = point : listOfPoints (n-1) b x' y' m' l'
    ?

    Si tu voulais bien expliquer en pseudo code ce que tu veux faire...

  3. #3
    Membre Expert

    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2013
    Messages
    610
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Finance

    Informations forums :
    Inscription : Avril 2013
    Messages : 610
    Billets dans le blog
    21
    Par défaut
    En fait, je me demande si tu ne veux pas dire:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    listOfPoints 0 _ _ _ _ _= []
    listOfPoints n b x y m l = point : listOfPoints (n-1) (nxt b) x' y' m' l' 
      where
    	nxt z
                | z <= 1/3 = choix1x x y
                | z <= 2/3 = choix2x x y
                | otherwise = choix3x x y
    	m'= round(sqrt((200*x')^2+(133.4*y')^2))
        	l' = 5*m'
        	point = translate (200*x') (133.4*y') (color (myColor (l')) (circle 1.0))

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    113
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 113
    Par défaut
    Oui, les gardes marchent, mais pas if.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Problème pour afficher des blocs horaires
    Par AlixNoyon dans le forum Windows Forms
    Réponses: 1
    Dernier message: 15/12/2009, 00h04
  2. Problème pour positionner des blocs
    Par Gizmil dans le forum Mise en page CSS
    Réponses: 2
    Dernier message: 09/11/2007, 01h32
  3. problème pour faire des blocs
    Par tinkye_winkye dans le forum Mise en page CSS
    Réponses: 6
    Dernier message: 04/01/2005, 14h13
  4. Problème avec Blocs
    Par tinkye_winkye dans le forum Mise en page CSS
    Réponses: 4
    Dernier message: 04/01/2005, 10h37
  5. [Astuce][Thread]Utilisation des blocs synchronized
    Par Pill_S dans le forum Concurrence et multi-thread
    Réponses: 14
    Dernier message: 21/07/2004, 14h14

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo