Zeph Le 19/10/2003 à 20:32 En voulant tokeniser des expressions "Ti-Basic-like", je comptais essayer de rester le plus proche possible des conventions du TiOS.
Donc j'ai stoqué des trucs genre "a+b*c->d" puis examiné d pour voir à quoi ressemblait l'expression tokenisée. On a dans le cas de 1+2*3-4 par exemple : 123*+4-, jusque là tout est normal.
Par contre avec les operateurs de comparaison (> et < entre autres), les operandes sont inversées, par exemple 1*2<3+4 -> 34+12*<. Je me demande à quoi peut ressembler leur code pour avoir un résultat comme ça, j'ai fait un petit tokeniseur d'expressions simples, et il semblait logique d'avoir toujours une conservation de l'ordre des valeurs (1, 2, 3 et 4 dans mon exemple, ce qui donnait 12*34+<). Pourquoi est-ce que le TiOS inverse les operandes pour <, > (et surement d'autres operateurs) ?
Autre chose si quelqun sait : quand il parse une expression, il commence au premier caractère ou au dernier ?

All right. Keep doing whatever it is you think you're doing.
------------------------------------------
Besoin d'aide sur le site ? Essayez
par ici :)
Moi ça me semble autant logique d'inverser les expressions lors d'une comparaison que de ne pas les inverser.

« Quand le dernier arbre sera abattu, la dernière rivière empoisonnée, le dernier poisson capturé, alors vous découvrirez que l'argent ne se mange pas
. »
Zeph Le 19/10/2003 à 22:56 Il m'avait semblé que - et / avait le même ordre, mais je n'en suis plus sûr, à vérifier. Je vais jeter un oeil à Tokens89, merci.
P.S : L'expression tokenisée se lit de droite à gauche, ok (de toute façon la lire de gauche à droite serait impossible, puisque la taille des expressions est indiquée à la fin lorceque c'est nécessaire). Mais pour parser l'expression entrée par l'utilisateur, le TiOS lit de droite à gauche ou de gauche à droite ?

All right. Keep doing whatever it is you think you're doing.
------------------------------------------
Besoin d'aide sur le site ? Essayez
par ici :)
Moumou> + et - ont la même priorité, donc on est obligé de choisir la même associativité pour les deux...
Kevin> Oui, mais ils ont dû essayer de limiter ça. Peut-être qu'au début ils voulaient laisser 3+x tel quel, puis ils se sont rendu compte que c'était souvent plus lisible avec x+3 ?
« The biggest civil liberty of all is not to be killed by a terrorist. » (Geoff Hoon, ministre des transports anglais)
Pollux > Ah oui, j'y avais pas pensé.

I'm on a boat motherfucker, don't you ever forget
De plus, l'addition n'est pas associative en virgule flottante! Et la calculatrice permet aussi le calcul en virgule flottante.
ben il n'y a pas d'associativité pour le + mais il faut bien au moment de parser en définir une.. la plus "logique" a été prise a savoir 1+2+3 = (1+2)+3
enfin sa c'est mon avis perso..

Proud to be CAKE©®™
GCC4TI importe qui a problème en Autriche, pour l'UE plus et une encore de correspours nucléaire, ce n'est pas ytre d'instérier. L'état très même contraire, toujours reconstruire un pouvoir une choyer d'aucrée de compris le plus mite de genre, ce n'est pas moins)
Stalin est l'élection de la langie.
PpHd Le 22/10/2003 à 09:25 Ca depend. Certains calculs formels reclassent completement les termes avant d'evaluer:
1e-10+1e10-1e10 sera interprete par 1e10-1e10+1e-10.
Sinon aussi pour se qui est de l'affichage de x+3 au lieu de 3+x c'est parceque la TI classe les puissances par ordre décroissant
ie :
x^3 + 4x^2 + 2x + 3

Proud to be CAKE©®™
GCC4TI importe qui a problème en Autriche, pour l'UE plus et une encore de correspours nucléaire, ce n'est pas ytre d'instérier. L'état très même contraire, toujours reconstruire un pouvoir une choyer d'aucrée de compris le plus mite de genre, ce n'est pas moins)
Stalin est l'élection de la langie.