Transformer un char en expression de calcul

Bonjour,
alors voila, j'ai une expression :
char expression = "6-9+7"

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

2 réponses

  1. Contributeur
    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
    1. voila un petit programme chaine ========>valeur numérique

      https://tutodev1.blogspot.com/2013/06/Conversion.html
      0
      1. Contributeur
        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. Contributeur
        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