Rechercher : dans
Par :

{Python} Calcul d'une expression

Elrachal, le 12 nov 2009 à 11:39:47 
 Signaler ce message aux modérateurs

Bonjour,
J'ai une expression du genre : 2+3x5
je souhaite créer un programme pour calculer cette expression.
j'ai écrit le code suivant.
La fonction scanFactor() verifie si on a bien un chiffre
La fonction scanChar analyse le caractere


ok,y = scanFactor()
                if scanChar('x'):
			ok, y = scanFactor()
			if ok:
				x = x * y
			else:
				scanPosition = lastPosition
				break
		elif scanChar('-'):
			ok, y = scanFactor()
			if ok:
				x = x - y
			else:
				scanPosition = lastPosition
				break
		elif scanChar('+'):
                        ok, y = scanFactor()
			if ok:
				x = x + y
			else:
				scanPosition = lastPosition
				break
		
		else:
			break


Ce code fonctionne pour les expression ayant la multiplication en premier operateur.
dans les expressions ou la multiplcation n'est pas vu comme le premier opérateurs, il ne fonctionne pas.
Qu'est ce que je dois modifier dans le code afin qu'il reconnaisse la priorité de la multiplication sur les deux autres opérateurs?


Je vous remercie d'avance,

Cordialement

Elrachal
Configuration: Windows XP
Firefox 3.5.5

Meilleures réponses pour « {Python} Calcul d'une expression » dans :
Votre première application graphique avec Python et Glade VoirCe guide vous aidera à créer pas à pas votre première application graphique. Nous allons utiliser le langage de programme Python et l'API graphique GTK, en utilisant le logiciel Glade pour créer facilement les interfaces graphiques. C'est de la...
[Excel] Chemin et nom de stockage de feuille de calcul VoirIndiquer automatiquement le chemin d'accès (path) et le nom de stockage de toute feuille de calcul Noter dans une cellule (A& par exemple) la formule : =cellule("nomfichier";A1) A chaque sauvegarde et/ou déplacement de fichier dans votre...
[Python] Lire et écrire des fichiers CSV VoirLIRE ET ÉCRIRE DES FICHIERS CSV Python www.python.org, dans sa version 2.4 supporte de facto le format CSV (comma-separated values: valeurs séparées par des virgules). La Library Reference est certes très explicative à ce sujet, mais uniquement...
Tableur - Les formules VoirUne formule est une expression, qui, lorsqu’elle est interprétée par le tableur, effectue un calcul soit interne, soit plus fréquemment en employant des valeurs présentes dans d’autres cellules. Pour saisir une formule dans une cellule, il suffit de...
VBScript - Les opérateurs VoirQu'est-ce qu'un opérateur? Les opérateurs sont des symboles qui permettent de manipuler des variables, c'est-à-dire effectuer des opérations, les évaluer, ... On distingue plusieurs types d'opérateurs : les opérateurs de calcul les opérateurs de...