10 UMLClass 580 90 140 60 /Expression/ -- -- /+evaluer():double/ UMLClass 390 230 100 30 /Terme/ UMLClass 880 230 100 30 /Opadd/ UMLClass 290 320 100 30 /Facteur/ UMLClass 760 320 150 80 Opplus -- -- +evaluer(): gauche.evaluer() + droite.evaluer() UMLClass 490 320 100 30 /Opmul/ UMLClass 960 320 140 80 Opminus -- -- +evaluer(): gauche.evaluer() - droite.evaluer() UMLClass 10 510 150 80 Chiffre -- -c:int <- {0,...,9} -- +evaluer():double UMLClass 190 510 220 80 Variable -- -v:TreeMap<Integer,Double> -- +evaluer():double UMLClass 440 510 190 80 ParentheseExp -- -- +evaluer():exp.evaluer() UMLClass 400 400 140 80 Opmulti -- -- +evaluer(): gauche.evaluer() * droite.evaluer() UMLClass 550 400 140 80 Opdiv -- -- +evaluer(): gauche.evaluer() / droite.evaluer() Relation 640 140 30 80 lt=<<- 10.0;10.0;10.0;60.0 Relation 430 190 520 60 lt=- 10.0;40.0;10.0;10.0;500.0;10.0;500.0;40.0 Relation 710 110 370 150 lt=<- droite 10.0;10.0;310.0;10.0;310.0;130.0;270.0;130.0 Relation 480 220 420 40 lt=<- gauche 10.0;20.0;400.0;20.0 Relation 430 250 30 60 lt=<<- 10.0;10.0;10.0;40.0 Relation 330 280 230 60 lt=- 10.0;40.0;10.0;10.0;210.0;10.0;210.0;40.0 Relation 380 310 130 40 lt=<- gauche 10.0;20.0;110.0;20.0 Relation 480 240 210 110 lt=<- droite 10.0;10.0;150.0;10.0;150.0;90.0;110.0;90.0 Relation 920 250 30 60 lt=<<- 10.0;10.0;10.0;40.0 Relation 820 280 230 60 lt=- 10.0;40.0;10.0;10.0;210.0;10.0;210.0;40.0 Relation 530 340 30 60 lt=<<- 10.0;10.0;10.0;40.0 Relation 460 370 170 50 lt=- 10.0;30.0;10.0;10.0;150.0;10.0;150.0;30.0 Relation 620 90 530 480 lt=<- exp 100.0;10.0;490.0;10.0;490.0;460.0;10.0;460.0 Relation 70 480 480 50 lt=- 10.0;30.0;10.0;10.0;460.0;10.0;460.0;30.0 Relation 330 340 30 170 lt=<<- 10.0;10.0;10.0;150.0 Relation 290 480 30 50 lt=- 10.0;10.0;10.0;30.0