Bonsoir,
Je souhaite réaliser une calculatrice (la même que celle de windows) avec la librairie GTK. (je n'ai pas posté dans le forum GTK car mon problème n'est pas en lien direct avec GTK).
Actuellement, tout fonctionne sauf la gestion des priorités.
Ex :
3+2+9-6=8 La c'est bon
3*3 = 9 La c'est bon aussi
Mais si l'utilisateur fait : 3+3*2 ça va me faire 12
Mon problème est que je ne gère pas les priorités avec * et /.
Et je ne vois pas comment je pourrais faire.
Pour mon code, j'ai une fonction pour chaque bouton.
J'ai une structure :
A chaque clic sur un opérateur, mon programme va vérifier s'il n'y avait pas une opération avant à effectuer, et si oui il va l'effectuer.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 typedef struct tete { GtkLabel * champ; void * bouton; long float resultat; long float nombre; char operateur; }t_tet;
Et c'est là qu'est le problème si par exemple cette opération était un + et que la nouvelle opération est un *, ça va poser problème.
Avez vous une idée de comment je pourrais faire ?
Merci de votre aide
Partager