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

Algorithmes et structures de données Discussion :

Si Alors Sinon


Sujet :

Algorithmes et structures de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Profil pro
    Développeur .Net, Administrateur système
    Inscrit en
    Octobre 2003
    Messages
    219
    Détails du profil
    Informations personnelles :
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Développeur .Net, Administrateur système
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2003
    Messages : 219
    Par défaut Si Alors Sinon
    Bonjour,

    Connaissez vous des algorithmes d'évaluation de conditions Si alors sinon imbriqués ? Pour la performance, mieux vaut il un recursif ou un traitement iteratif ?

    Merci pour votre aide !

  2. #2
    Expert confirmé
    Avatar de Jedai
    Homme Profil pro
    Enseignant
    Inscrit en
    Avril 2003
    Messages
    6 245
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Avril 2003
    Messages : 6 245
    Par défaut
    Un "algorithme d'évaluation de Si Alors Sinon" ? Qu'est-ce que tu veux dire, il n'y a aucun algorithme impliqué !! Un IfThenElse est traduit par des sauts dans le code au niveau langage machine, la question de la récursivité ou de l'itération ne se pose pas.
    Ou alors je n'ai pas compris ta question, ce qui est fort possible vu la précision extrême de ton post...

    --
    Jedaï

  3. #3
    Membre éclairé
    Profil pro
    Développeur .Net, Administrateur système
    Inscrit en
    Octobre 2003
    Messages
    219
    Détails du profil
    Informations personnelles :
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Développeur .Net, Administrateur système
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2003
    Messages : 219
    Par défaut
    En fait, mon programme doit interpreter du code qui peut contenir des expressions "Si Alors Sinon" imbriqués.

    Il n'est donc pas question pour le moment de compilation mais juste d'interpretation.

    Actuellement j'utilise une méthode récursive pour interpreter la saisie de l'utilisateur.

  4. #4
    Membre émérite
    Avatar de LinkinSelim
    Profil pro
    Enseignant Chercheur
    Inscrit en
    Mars 2006
    Messages
    365
    Détails du profil
    Informations personnelles :
    Localisation : Algérie

    Informations professionnelles :
    Activité : Enseignant Chercheur

    Informations forums :
    Inscription : Mars 2006
    Messages : 365
    Par défaut
    tu dois d'abord generer une grammaire qui gere les SiALorsSinon, et a partir de cette grammaire tu choisis une methode d'analyse syntaxique ascendante ou descendante mais c'est tout un cours

  5. #5
    Expert confirmé
    Avatar de Jedai
    Homme Profil pro
    Enseignant
    Inscrit en
    Avril 2003
    Messages
    6 245
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Avril 2003
    Messages : 6 245
    Par défaut
    A vrai dire, la question dépend plus de la structure que tu utilises pour stocker ton programme à interpréter... Généralement tu n'as pas besoin de récursivité pour traiter un IfThenElse, sauf si ta structure est mal conçue (il peut y avoir d'autres raisons, liées à la portée des variables dans ton langage interprété).
    Entendons nous bien, cela ne veut pas dire qu'il ne faut pas t'exprimer de façon récursive, mais bien qu'une récursivité terminale devrait suffire et sera sans doute plus naturelle qu'une reformulation itérative. Evidemment si tu es dans un langage où les récursivités terminales ne sont pas optimisées, tu ferais mieux d'éviter. (D'un autre côté, pour écrire un interpréteur, les langages en questions ne sont sans doute pas le meilleur choix... Quel langage utilises-tu au fait ?)

    --
    Jedaï

  6. #6
    Membre éclairé
    Profil pro
    Développeur .Net, Administrateur système
    Inscrit en
    Octobre 2003
    Messages
    219
    Détails du profil
    Informations personnelles :
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Développeur .Net, Administrateur système
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2003
    Messages : 219
    Par défaut b_lob
    Bonjour,

    Je déterre ce sujet car il avait été mis entre parenthèse depuis le temps. J'ai donc besoin d'analyser une expression de calcul saisie pour l'interpreter et en produire un résultat.

    Je travaille en c#. L'utilisateur saisie les données dans une richtextbox. Il peut saisir des tests si alors sinon imbriqués (seulement cela et rien d'autre). Je suis un peu paumé devant les possibilités... pouvez vous m'aiguiller ?

    actuellement, j'arrive à correctement découper l'expression saisie en une suite de token.

    Par rapport à ce que dis Jedai, est ce que les appels récursifs sont optimisés en c# ?

    Merci pour votre aide!

Discussions similaires

  1. [BO 6.5] Si ALors Sinon Imbriqués
    Par kenobyalex dans le forum Deski
    Réponses: 2
    Dernier message: 04/02/2008, 11h50
  2. Si Alors Sinon + Valeur Null
    Par matybouch dans le forum Débuter
    Réponses: 2
    Dernier message: 12/07/2007, 17h04
  3. Problème de syntaxe de "Si Alors Sinon".
    Par byrdo dans le forum Deski
    Réponses: 8
    Dernier message: 19/04/2007, 17h15
  4. Si Alors Sinon
    Par naut95 dans le forum Débuter
    Réponses: 4
    Dernier message: 04/09/2006, 15h22
  5. SQL Server : ISNULL avec Si/Alors/Sinon
    Par Goldorak2 dans le forum MS SQL Server
    Réponses: 3
    Dernier message: 16/06/2006, 16h36

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