exo6: add the full implementation.
[Project_POO.git] / exo6 / design_arithmetic.uxf
1 <?xml version="1.0" encoding="UTF-8"?><diagram program="umlet" version="13.3">
2 <zoom_level>10</zoom_level>
3 <element>
4 <id>UMLClass</id>
5 <coordinates>
6 <x>580</x>
7 <y>90</y>
8 <w>140</w>
9 <h>60</h>
10 </coordinates>
11 <panel_attributes>/Expression/
12 --
13 --
14 /+evaluer():double/
15 </panel_attributes>
16 <additional_attributes/>
17 </element>
18 <element>
19 <id>UMLClass</id>
20 <coordinates>
21 <x>390</x>
22 <y>230</y>
23 <w>100</w>
24 <h>30</h>
25 </coordinates>
26 <panel_attributes>/Terme/</panel_attributes>
27 <additional_attributes/>
28 </element>
29 <element>
30 <id>UMLClass</id>
31 <coordinates>
32 <x>880</x>
33 <y>230</y>
34 <w>100</w>
35 <h>30</h>
36 </coordinates>
37 <panel_attributes>/Opadd/</panel_attributes>
38 <additional_attributes/>
39 </element>
40 <element>
41 <id>UMLClass</id>
42 <coordinates>
43 <x>290</x>
44 <y>320</y>
45 <w>100</w>
46 <h>30</h>
47 </coordinates>
48 <panel_attributes>/Facteur/</panel_attributes>
49 <additional_attributes/>
50 </element>
51 <element>
52 <id>UMLClass</id>
53 <coordinates>
54 <x>760</x>
55 <y>320</y>
56 <w>150</w>
57 <h>80</h>
58 </coordinates>
59 <panel_attributes>Opplus
60 --
61 --
62 +evaluer():
63 gauche.evaluer() +
64 droite.evaluer()</panel_attributes>
65 <additional_attributes/>
66 </element>
67 <element>
68 <id>UMLClass</id>
69 <coordinates>
70 <x>490</x>
71 <y>320</y>
72 <w>100</w>
73 <h>30</h>
74 </coordinates>
75 <panel_attributes>/Opmul/</panel_attributes>
76 <additional_attributes/>
77 </element>
78 <element>
79 <id>UMLClass</id>
80 <coordinates>
81 <x>960</x>
82 <y>320</y>
83 <w>140</w>
84 <h>80</h>
85 </coordinates>
86 <panel_attributes>Opminus
87 --
88 --
89 +evaluer():
90 gauche.evaluer() -
91 droite.evaluer()</panel_attributes>
92 <additional_attributes/>
93 </element>
94 <element>
95 <id>UMLClass</id>
96 <coordinates>
97 <x>10</x>
98 <y>510</y>
99 <w>150</w>
100 <h>80</h>
101 </coordinates>
102 <panel_attributes>Chiffre
103 --
104 -c:int &lt;- {0,...,9}
105 --
106 +evaluer():double</panel_attributes>
107 <additional_attributes/>
108 </element>
109 <element>
110 <id>UMLClass</id>
111 <coordinates>
112 <x>190</x>
113 <y>510</y>
114 <w>220</w>
115 <h>80</h>
116 </coordinates>
117 <panel_attributes>Variable
118 --
119 -v:TreeMap&lt;Integer,Double&gt;
120 --
121 +evaluer():double</panel_attributes>
122 <additional_attributes/>
123 </element>
124 <element>
125 <id>UMLClass</id>
126 <coordinates>
127 <x>440</x>
128 <y>510</y>
129 <w>190</w>
130 <h>80</h>
131 </coordinates>
132 <panel_attributes>ParentheseExp
133 --
134 --
135 +evaluer():exp.evaluer()</panel_attributes>
136 <additional_attributes/>
137 </element>
138 <element>
139 <id>UMLClass</id>
140 <coordinates>
141 <x>400</x>
142 <y>400</y>
143 <w>140</w>
144 <h>80</h>
145 </coordinates>
146 <panel_attributes>Opmulti
147 --
148 --
149 +evaluer():
150 gauche.evaluer() *
151 droite.evaluer()</panel_attributes>
152 <additional_attributes/>
153 </element>
154 <element>
155 <id>UMLClass</id>
156 <coordinates>
157 <x>550</x>
158 <y>400</y>
159 <w>140</w>
160 <h>80</h>
161 </coordinates>
162 <panel_attributes>Opdiv
163 --
164 --
165 +evaluer():
166 gauche.evaluer() /
167 droite.evaluer()</panel_attributes>
168 <additional_attributes/>
169 </element>
170 <element>
171 <id>Relation</id>
172 <coordinates>
173 <x>640</x>
174 <y>140</y>
175 <w>30</w>
176 <h>80</h>
177 </coordinates>
178 <panel_attributes>lt=&lt;&lt;-</panel_attributes>
179 <additional_attributes>10.0;10.0;10.0;60.0</additional_attributes>
180 </element>
181 <element>
182 <id>Relation</id>
183 <coordinates>
184 <x>430</x>
185 <y>190</y>
186 <w>520</w>
187 <h>60</h>
188 </coordinates>
189 <panel_attributes>lt=-</panel_attributes>
190 <additional_attributes>10.0;40.0;10.0;10.0;500.0;10.0;500.0;40.0</additional_attributes>
191 </element>
192 <element>
193 <id>Relation</id>
194 <coordinates>
195 <x>710</x>
196 <y>110</y>
197 <w>370</w>
198 <h>150</h>
199 </coordinates>
200 <panel_attributes>lt=&lt;-
201 droite</panel_attributes>
202 <additional_attributes>10.0;10.0;310.0;10.0;310.0;130.0;270.0;130.0</additional_attributes>
203 </element>
204 <element>
205 <id>Relation</id>
206 <coordinates>
207 <x>480</x>
208 <y>220</y>
209 <w>420</w>
210 <h>40</h>
211 </coordinates>
212 <panel_attributes>lt=&lt;-
213 gauche</panel_attributes>
214 <additional_attributes>10.0;20.0;400.0;20.0</additional_attributes>
215 </element>
216 <element>
217 <id>Relation</id>
218 <coordinates>
219 <x>430</x>
220 <y>250</y>
221 <w>30</w>
222 <h>60</h>
223 </coordinates>
224 <panel_attributes>lt=&lt;&lt;-</panel_attributes>
225 <additional_attributes>10.0;10.0;10.0;40.0</additional_attributes>
226 </element>
227 <element>
228 <id>Relation</id>
229 <coordinates>
230 <x>330</x>
231 <y>280</y>
232 <w>230</w>
233 <h>60</h>
234 </coordinates>
235 <panel_attributes>lt=-</panel_attributes>
236 <additional_attributes>10.0;40.0;10.0;10.0;210.0;10.0;210.0;40.0</additional_attributes>
237 </element>
238 <element>
239 <id>Relation</id>
240 <coordinates>
241 <x>380</x>
242 <y>310</y>
243 <w>130</w>
244 <h>40</h>
245 </coordinates>
246 <panel_attributes>lt=&lt;-
247 gauche</panel_attributes>
248 <additional_attributes>10.0;20.0;110.0;20.0</additional_attributes>
249 </element>
250 <element>
251 <id>Relation</id>
252 <coordinates>
253 <x>480</x>
254 <y>240</y>
255 <w>210</w>
256 <h>110</h>
257 </coordinates>
258 <panel_attributes>lt=&lt;-
259 droite</panel_attributes>
260 <additional_attributes>10.0;10.0;150.0;10.0;150.0;90.0;110.0;90.0</additional_attributes>
261 </element>
262 <element>
263 <id>Relation</id>
264 <coordinates>
265 <x>920</x>
266 <y>250</y>
267 <w>30</w>
268 <h>60</h>
269 </coordinates>
270 <panel_attributes>lt=&lt;&lt;-</panel_attributes>
271 <additional_attributes>10.0;10.0;10.0;40.0</additional_attributes>
272 </element>
273 <element>
274 <id>Relation</id>
275 <coordinates>
276 <x>820</x>
277 <y>280</y>
278 <w>230</w>
279 <h>60</h>
280 </coordinates>
281 <panel_attributes>lt=-</panel_attributes>
282 <additional_attributes>10.0;40.0;10.0;10.0;210.0;10.0;210.0;40.0</additional_attributes>
283 </element>
284 <element>
285 <id>Relation</id>
286 <coordinates>
287 <x>530</x>
288 <y>340</y>
289 <w>30</w>
290 <h>60</h>
291 </coordinates>
292 <panel_attributes>lt=&lt;&lt;-</panel_attributes>
293 <additional_attributes>10.0;10.0;10.0;40.0</additional_attributes>
294 </element>
295 <element>
296 <id>Relation</id>
297 <coordinates>
298 <x>460</x>
299 <y>370</y>
300 <w>170</w>
301 <h>50</h>
302 </coordinates>
303 <panel_attributes>lt=-</panel_attributes>
304 <additional_attributes>10.0;30.0;10.0;10.0;150.0;10.0;150.0;30.0</additional_attributes>
305 </element>
306 <element>
307 <id>Relation</id>
308 <coordinates>
309 <x>620</x>
310 <y>90</y>
311 <w>530</w>
312 <h>480</h>
313 </coordinates>
314 <panel_attributes>lt=&lt;-
315 exp</panel_attributes>
316 <additional_attributes>100.0;10.0;490.0;10.0;490.0;460.0;10.0;460.0</additional_attributes>
317 </element>
318 <element>
319 <id>Relation</id>
320 <coordinates>
321 <x>70</x>
322 <y>480</y>
323 <w>480</w>
324 <h>50</h>
325 </coordinates>
326 <panel_attributes>lt=-</panel_attributes>
327 <additional_attributes>10.0;30.0;10.0;10.0;460.0;10.0;460.0;30.0</additional_attributes>
328 </element>
329 <element>
330 <id>Relation</id>
331 <coordinates>
332 <x>330</x>
333 <y>340</y>
334 <w>30</w>
335 <h>170</h>
336 </coordinates>
337 <panel_attributes>lt=&lt;&lt;-</panel_attributes>
338 <additional_attributes>10.0;10.0;10.0;150.0</additional_attributes>
339 </element>
340 <element>
341 <id>Relation</id>
342 <coordinates>
343 <x>290</x>
344 <y>480</y>
345 <w>30</w>
346 <h>50</h>
347 </coordinates>
348 <panel_attributes>lt=-</panel_attributes>
349 <additional_attributes>10.0;10.0;10.0;30.0</additional_attributes>
350 </element>
351 </diagram>