Transformer un char en expression de calcul

jobertomeu Messages postés 1289 Statut Membre -  
fiddy Messages postés 441 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour,
alors voila, j'ai une expression :
char expression = "6-9+7"

J'aimerais avoir son résultat ..
Merci beaucoup ! :)

2 réponses

  1. fiddy Messages postés 441 Date d'inscription   Statut Contributeur Dernière intervention   1 847
     
    Bonjour,
    char expression = "6-9+7"
    Ce n'est pas possible. "6-9+7" est un tableau de char, pas un char.
    Donc, il faudrait plutôt mettre : char *expression="6-9+7"; ou char expression[]="6-9+7";

    Ensuite, cela n'est pas si simple que ça d'évaluer une expression en notation infixée. Il faut utiliser des piles.

    Tu peux ici trouver ton bonheur : https://en.wikipedia.org/wiki/Shunting_yard_algorithm
    0
  2. karara20 Messages postés 58 Statut Membre 9
     
    voila un petit programme chaine ========>valeur numérique

    https://tutodev1.blogspot.com/2013/06/Conversion.html
    0
    1. [Dal] Messages postés 6122 Date d'inscription   Statut Contributeur Dernière intervention   1 108
       
      Salut Karara,

      Je pense que c'est mieux si tu postes ton code sur le forum, en l'entourant des balises code (clique sur le symbole <> en haut à droite à côté du symbole de soulignement), car cela permet de discuter plus facilement de ce que tu proposes.

      Cependant, ton code ne fait pas vraiment ce qui est demandé, à savoir : évaluer le résultat de l'expression.


      Dal
      0
    2. fiddy Messages postés 441 Date d'inscription   Statut Contributeur Dernière intervention   1 847
       
      Yep. Le but du programme est d'évaluer l'expression pas de récupérer les valeurs.
      D'ailleurs, pour info dans ton code la variable point ne sert à rien. Tu peux t'en passer :-).
      0