From 85103a22227ec5707c6ebd4039cda318ac16867a Mon Sep 17 00:00:00 2001 From: Felix-Vimalaratnam Date: Wed, 27 Nov 2024 12:26:48 +0100 Subject: [PATCH] fin arbre --- DEV3.2/Files/chaine/Arithmetique.class | Bin 2263 -> 0 bytes DEV3.2/Files/chaine/Arithmetique.java | 58 -- DEV3.2/Files/chaine/FileChainee$1.class | Bin 1019 -> 0 bytes DEV3.2/Files/chaine/FileChainee$Node.class | Bin 522 -> 0 bytes DEV3.2/Files/chaine/FileChainee.class | Bin 1378 -> 0 bytes DEV3.2/Files/chaine/FileChainee.java | 78 -- DEV3.2/Files/chaine/LinkedQueue$1.class | Bin 0 -> 961 bytes DEV3.2/Files/chaine/LinkedQueue.class | Bin 0 -> 1430 bytes DEV3.2/Files/chaine/LinkedQueue.java | 79 ++ DEV3.2/Files/chaine/MergeSortQueue.class | Bin 0 -> 2616 bytes DEV3.2/Files/chaine/MergeSortQueue.java | 76 ++ DEV3.2/Files/chaine/Node.class | Bin 0 -> 408 bytes DEV3.2/Files/chaine/Node.java | 9 + DEV3.2/Files/tableau/Arithmetique.class | Bin 2278 -> 0 bytes DEV3.2/Files/tableau/Arithmetique.java | 56 -- DEV3.2/Files/tableau/ArrayQueue$1.class | Bin 0 -> 1008 bytes DEV3.2/Files/tableau/ArrayQueue.class | Bin 0 -> 1590 bytes DEV3.2/Files/tableau/ArrayQueue.java | 93 +++ DEV3.2/Files/tableau/File.class | Bin 315 -> 0 bytes DEV3.2/Files/tableau/File.java | 6 - DEV3.2/Files/tableau/FileTableau.class | Bin 1099 -> 0 bytes DEV3.2/Files/tableau/FileTableau.java | 41 - DEV3.2/Files/tableau/MergeSortQueue.class | Bin 0 -> 2615 bytes DEV3.2/Files/tableau/MergeSortQueue.java | 76 ++ DEV3.2/arbre/infixe/Infixe.class | Bin 0 -> 2158 bytes DEV3.2/arbre/infixe/Infixe.java | 45 ++ DEV3.2/arbre/infixe/Node.class | Bin 0 -> 223 bytes DEV3.2/arbre/infixe/Node.java | 4 + DEV3.2/arbre/infixe/OperandNode.class | Bin 0 -> 381 bytes DEV3.2/arbre/infixe/OperandNode.java | 12 + DEV3.2/arbre/infixe/OperatorNode.class | Bin 0 -> 1114 bytes DEV3.2/arbre/infixe/OperatorNode.java | 20 + DEV3.2/arbre/prefixe/Node.class | Bin 0 -> 224 bytes DEV3.2/arbre/prefixe/Node.java | 4 + DEV3.2/arbre/prefixe/OperatorNode.class | Bin 0 -> 956 bytes DEV3.2/arbre/prefixe/OperatorNode.java | 16 + DEV3.2/arbre/prefixe/Prefixe.class | Bin 0 -> 2052 bytes DEV3.2/arbre/prefixe/Prefixe.java | 45 ++ DEV3.2/arbre/prefixe/ValueNode.class | Bin 0 -> 378 bytes DEV3.2/arbre/prefixe/ValueNode.java | 13 + DEV3.2/arbre/repertoire/Noeud.class | Bin 0 -> 1727 bytes DEV3.2/arbre/repertoire/Noeud.java | 42 + DEV3.2/arbre/repertoire/Repertoires.class | Bin 0 -> 1438 bytes DEV3.2/arbre/repertoire/Repertoires.java | 27 + DEV3.2/arbre/repertoire/toto/fichier4 | 0 DEV3.2/arbre/repertoire/toto/sous1/fichier1 | 0 DEV3.2/arbre/repertoire/toto/sous1/fichier2 | 0 DEV3.2/arbre/repertoire/toto/sous2/fichier3 | 0 DEV3.2/dictionnaire/Traces.class | Bin 0 -> 1671 bytes DEV3.2/dictionnaire/Traces.java | 24 + .../dictionnaire/couleurs/CouleursApp.class | Bin 0 -> 4076 bytes DEV3.2/dictionnaire/couleurs/CouleursApp.java | 75 ++ DEV3.2/dictionnaire/couleurs/rgb.txt | 752 ++++++++++++++++++ 53 files changed, 1412 insertions(+), 239 deletions(-) delete mode 100644 DEV3.2/Files/chaine/Arithmetique.class delete mode 100644 DEV3.2/Files/chaine/Arithmetique.java delete mode 100644 DEV3.2/Files/chaine/FileChainee$1.class delete mode 100644 DEV3.2/Files/chaine/FileChainee$Node.class delete mode 100644 DEV3.2/Files/chaine/FileChainee.class delete mode 100644 DEV3.2/Files/chaine/FileChainee.java create mode 100644 DEV3.2/Files/chaine/LinkedQueue$1.class create mode 100644 DEV3.2/Files/chaine/LinkedQueue.class create mode 100644 DEV3.2/Files/chaine/LinkedQueue.java create mode 100644 DEV3.2/Files/chaine/MergeSortQueue.class create mode 100644 DEV3.2/Files/chaine/MergeSortQueue.java create mode 100644 DEV3.2/Files/chaine/Node.class create mode 100644 DEV3.2/Files/chaine/Node.java delete mode 100644 DEV3.2/Files/tableau/Arithmetique.class delete mode 100644 DEV3.2/Files/tableau/Arithmetique.java create mode 100644 DEV3.2/Files/tableau/ArrayQueue$1.class create mode 100644 DEV3.2/Files/tableau/ArrayQueue.class create mode 100644 DEV3.2/Files/tableau/ArrayQueue.java delete mode 100644 DEV3.2/Files/tableau/File.class delete mode 100644 DEV3.2/Files/tableau/File.java delete mode 100644 DEV3.2/Files/tableau/FileTableau.class delete mode 100644 DEV3.2/Files/tableau/FileTableau.java create mode 100644 DEV3.2/Files/tableau/MergeSortQueue.class create mode 100644 DEV3.2/Files/tableau/MergeSortQueue.java create mode 100644 DEV3.2/arbre/infixe/Infixe.class create mode 100644 DEV3.2/arbre/infixe/Infixe.java create mode 100644 DEV3.2/arbre/infixe/Node.class create mode 100644 DEV3.2/arbre/infixe/Node.java create mode 100644 DEV3.2/arbre/infixe/OperandNode.class create mode 100644 DEV3.2/arbre/infixe/OperandNode.java create mode 100644 DEV3.2/arbre/infixe/OperatorNode.class create mode 100644 DEV3.2/arbre/infixe/OperatorNode.java create mode 100644 DEV3.2/arbre/prefixe/Node.class create mode 100644 DEV3.2/arbre/prefixe/Node.java create mode 100644 DEV3.2/arbre/prefixe/OperatorNode.class create mode 100644 DEV3.2/arbre/prefixe/OperatorNode.java create mode 100644 DEV3.2/arbre/prefixe/Prefixe.class create mode 100644 DEV3.2/arbre/prefixe/Prefixe.java create mode 100644 DEV3.2/arbre/prefixe/ValueNode.class create mode 100644 DEV3.2/arbre/prefixe/ValueNode.java create mode 100644 DEV3.2/arbre/repertoire/Noeud.class create mode 100644 DEV3.2/arbre/repertoire/Noeud.java create mode 100644 DEV3.2/arbre/repertoire/Repertoires.class create mode 100644 DEV3.2/arbre/repertoire/Repertoires.java create mode 100644 DEV3.2/arbre/repertoire/toto/fichier4 create mode 100644 DEV3.2/arbre/repertoire/toto/sous1/fichier1 create mode 100644 DEV3.2/arbre/repertoire/toto/sous1/fichier2 create mode 100644 DEV3.2/arbre/repertoire/toto/sous2/fichier3 create mode 100644 DEV3.2/dictionnaire/Traces.class create mode 100644 DEV3.2/dictionnaire/Traces.java create mode 100644 DEV3.2/dictionnaire/couleurs/CouleursApp.class create mode 100644 DEV3.2/dictionnaire/couleurs/CouleursApp.java create mode 100644 DEV3.2/dictionnaire/couleurs/rgb.txt diff --git a/DEV3.2/Files/chaine/Arithmetique.class b/DEV3.2/Files/chaine/Arithmetique.class deleted file mode 100644 index f552954be7def22b4205baa4a5b7d51fb92f43fd..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2263 zcmX^0Z`VEs1_mdFQZ5E224;2!79Ivx1~x_pfvm)`ME#t^ymWp4q^#8B5=I6#o6Nk- z5<5l)W)00SP6iGJPId+^9tLg(9u(!lmBl5gxr_|V`K2X{45B_@gEI5=1Bx>9N`gy@ zQWJBnIT-jD863h=OEYtFQmYiw@=J^IGK&;S^HLR3D+-EIi;FY!^Au9^6!P**5=%hr zg8ZEPyu{4nRE5mEvecsD!z)wuxEKT&1lbvcco>8kL>L)_vDn1Oz+M2dHz$vgK~w|c z7O52!geM{pgujlA4}c#KmC1V9di{0`dq)W?o5HVoqr)NYIRj!JNT@ zk%7GoB;udO$RMWSiEJ*^0Bew|tauo#LB3+mPfJTJVrQ^rWROKz(5 zgLrOYcB*rJUUFhdcxFk4bADcNNn&0}F`8jeomdRxUJ$8m*Si%HH2|RST7=jo=c^JYN!WkL3(o;)(Q;Ule(^Ju77HYi^10#bk zJ3|yB0}ni;3&F_&k^=dCGV@aXN^_G^i$W5UazN=MH!(906rs^b=>%$;W*8#_Z*WOs za<*?`0a!gdLn0%CFczhZ3|ztarA5i9pbWyuAc$!PSuC_1QLC2iOD7TMU{*UGmujOR3XGo9*KD=IjO}e zKKc3Cr3KcQL4qWLqA{ehAQg*p7_=D}7_=A|7<3sJ7_1l=81xw!7@`;$7%CVT7`!Cegygm{D9mIqV>V-7&R`(P zCZq!9tFeIi3X*I>YGA$?D~K;3$tI)$=CiSxv5T^=Vqjpn0|ik6$zaLE5WbvYF|vdi2MUiTx`V+9F4DrnxcuKt?VSv6j0`Lb z7^F5autSXB!Qi=z!H0oi8w3Ax25wLs1%R2tzMB}>b+$2t>|%%j%Wh;~WDsNA$hd_e zh=Be+GUAR(6I2b_Q*Bh6F}N28MqOj_eGQ z>t<8 diff --git a/DEV3.2/Files/chaine/Arithmetique.java b/DEV3.2/Files/chaine/Arithmetique.java deleted file mode 100644 index 5fa8225..0000000 --- a/DEV3.2/Files/chaine/Arithmetique.java +++ /dev/null @@ -1,58 +0,0 @@ -import java.util.Queue; - -public class Arithmetique { - - public static void main(String[] args) { - if (args.length == 0) { - System.out.println("Veuillez fournir une expression en notation polonaise inversée."); - return; - } - - // Utilisation de notre implémentation FileChainee pour la file - Queue queue = new FileChainee<>(); - - try { - for (String token : args) { - switch (token) { - case "+": - // Addition - queue.offer(queue.poll() + queue.poll()); - break; - case "-": - // Soustraction (attention à l'ordre) - int b = queue.poll(); - int a = queue.poll(); - queue.offer(a - b); - break; - case "x": - // Multiplication - queue.offer(queue.poll() * queue.poll()); - break; - case "/": - // Division (attention à l'ordre) - b = queue.poll(); - a = queue.poll(); - if (b == 0) { - throw new ArithmeticException("Division par zéro"); - } - queue.offer(a / b); - break; - default: - // Si ce n'est pas un opérateur, alors c'est un nombre - queue.offer(Integer.parseInt(token)); - break; - } - } - - // Le résultat final doit être le seul élément restant dans la file - if (queue.size() == 1) { - System.out.println("= " + queue.poll()); - } else { - System.out.println("Erreur : Expression incorrecte."); - } - - } catch (Exception e) { - System.out.println("Erreur lors de l'évaluation de l'expression : " + e.getMessage()); - } - } -} diff --git a/DEV3.2/Files/chaine/FileChainee$1.class b/DEV3.2/Files/chaine/FileChainee$1.class deleted file mode 100644 index 663310cbc8f3632e0768162da7523bbb18b2dceb..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1019 zcmX^0Z`VEs1_mbvYfc6x24;2!79Ivx1~x_pUboDgROgJu%)Hc86+=b_wvvp@Vif~M z23{W|8EY;E4hBwk1}+{3ZU!Dk27#=^vPAuy#JqHU|D>$c6H^!&gpe&z@ykz11-ngzhd~sihdsHps3JPe8qN{kEwNbUjK%*eo!l30=maunD+B%fJ>^s4YM zsDd2Dl9yUh!p@-1$RGq(2e#LwHnvp>pQxYPA;&zzZxPtRbi;`18;e#4X zdLSzp8TeiEl5_HlGxO3R4&z}kV=!lA;K+oBff&p=DCS!;GI02%7MFPB7nd+H@Ob9s zr4~8oBo-H^7Be!ifFhqkfq{vEgMpDjje&`Q36usH7#TDe7#NrsGzA1eiIstYfti7U zftx{#fr&wzfq}sktdfC2R7-m+1Ebb<26ip2EewoX7VPIh318Xy5 z;AAjo5MeN5&}Cp?U}a=rXb@mv1f?qmMzCoH42%qn3=9msT3Z-|k1?>bEN5V0UITUj z$P_lPq&0&cNH+r$w*yGEDuX`MEum1isAz3t5Szuoy_-QQayx^}evn~X7-W4wE)(9u zpuCkqSbGE9P%#Ep1_lNP26hHV27U%-25|-#1|I%r5RGVplj<)s!m=Oh*vrxr6Zuz-SwL4kpT zfr)_ujJX+j7#JCN!8|?&1_pix0XScffsuiMft5jsfr&wwfq_AbfeEaKOKUp=qn7qo z2KJ2%3=E76A`A=+d<@JC3=G^1EDSshoD95B6Ga(Vpe!*4aj+c{43c14ia~~ffq{#G Nk%5Cjib0lv3jn&HYbO8z diff --git a/DEV3.2/Files/chaine/FileChainee.class b/DEV3.2/Files/chaine/FileChainee.class deleted file mode 100644 index 7937da74fdbcce83379d3dc036ed7d792a244b75..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1378 zcmX^0Z`VEs1_mbvXD$XN24;2!79Ivx1~x_p@vOwMME%l|%p85kq~emI#N?8|($vya zMg}&U%)HDJJ4Oa(4b3o41`Y;Jb_OmU25tr(Mh0%T%$!u`jKs{m)Ko?Wmg3B+R7M6y zPj&`AMg{>SITgSBlvFMTUIqb>b%Klxq8dJ63v&|l()In5vQm>vtRbcg^Du}oh%z#; zWTYmhFfs`Fpc`Wia)USzg9KPrNn&OWCj&2o6c2+mSRgO8qJ)cqgF%*uL5@M5k%2w4 z*fqDHq!R4@D3DS`9tI@_Wkv>;l*E!mkPR3vVP{ZfWZ*@%*pQ1sg+U$UcnwAd0S#nF zS!;%|GiWg~@Pmy3hafcMID<3O^Abx+i&7aG#F4dtgTp4o)!NRQk%7fIKP8osf!`-H zFV(L!Hz~C!Brz!`m63rpKP@e_2uD~&F*5K5mn0@<`z97Z)w5}YxLRvQF*2|eT%gJ?#Q1&1U=l#zieIKQ+gITaKysL4wY zg?0I2oA!Fi5a7@UlbwWW>P8V9a0wbwxSY&kPJETH6?8W-_oc zZUEW3g+akb3&N1x${++{9cSRsV%*9g260HrRt9$M4RD7jF>o+2Feo#yGpI0dGN>^K zGN?1iFlaC+GiWksFlaLvG3dY?!}*6nj-A02>KJndMg|MGV=NdL85kKD7=$4fvNJAc z-~utXFeo7G0);#SgCW>Fb_OPHH&oLs8LXgQQ)FNUo5s1DK_yaaJA)d?3`m?n%rJvG z!kU4Rft$ew8ke$AN3d#bVPFS^HL?~T1{SC$TLwF@_w5-Rz{!D$ftNvr!I6Q1L5Kmw O=3sDQ0F@66AOHYqhX4=& diff --git a/DEV3.2/Files/chaine/FileChainee.java b/DEV3.2/Files/chaine/FileChainee.java deleted file mode 100644 index 0d598eb..0000000 --- a/DEV3.2/Files/chaine/FileChainee.java +++ /dev/null @@ -1,78 +0,0 @@ -import java.util.AbstractQueue; -import java.util.Iterator; -import java.util.NoSuchElementException; -import java.util.Queue; - -public class FileChainee extends AbstractQueue implements Queue { - private static class Node { - E data; - Node next; - - Node(E data) { - this.data = data; - } - } - - private Node head; // Premier élément de la file - private Node tail; // Dernier élément de la file - private int size = 0; // Taille de la file - - @Override - public boolean offer(E element) { - Node newNode = new Node<>(element); - if (head == null) { - tail = newNode; - } else { - newNode.next = head; - } - head = newNode; - size++; - return true; - } - - @Override - public E poll() { - if (isEmpty()) { - return null; - } - E data = head.data; - head = head.next; - if (head == null) { - tail = null; - } - size--; - return data; - } - - @Override - public E peek() { - return (head == null) ? null : head.data; - } - - @Override - public Iterator iterator() { - return new Iterator<>() { - private Node current = head; - - @Override - public boolean hasNext() { - return current != null; - } - - @Override - public E next() { - if (!hasNext()) { - throw new NoSuchElementException(); - } - E data = current.data; - current = current.next; - return data; - } - }; - } - - @Override - public int size() { - return size; - } -} diff --git a/DEV3.2/Files/chaine/LinkedQueue$1.class b/DEV3.2/Files/chaine/LinkedQueue$1.class new file mode 100644 index 0000000000000000000000000000000000000000..e2d6f137b52b485aa6541d18102a7d27ec1bc0a4 GIT binary patch literal 961 zcmX^0Z`VEs1_mbv3r+?m24;2!79Ivx1~x_pUZ2do?9`ON($vya6+=b_wvvp@Vig0B z1d@z37Xt?aCp!Zd4+A#?4R$^JAeokUuy1su>R%&tyBLkaFW?p8A9U}v?hGrNi z10MrFJA(iZgCK(tBLg>*QH%^M8L5dWj0|i(e)%b>)*$zY@Gyvi)UhX*78RxDm9R62 zGcqWE?IHSD9Oyv<6;nF;N)bGVvuHMkl|sFWsqZJ zU;&xQ$iSWoQOn366A=a&{Gr@Cc=9fRa-J&>On8TeiEl5_HlGxO3R z4&`AmVK8N6;K+oBgBZ*?DCS!;GI02%7MFPB7nd+H@Ob9sr4~8oBo-H^7BeU?Ffnj2 zFfu4HFflNJVwZuDL4|>Vfr&v?Kme5V7#J9s85kJ28Pph<7}OaU7)-$`85l&hw6`)a zYHep=*V5X;z_^8hcPoSNMg|53Mg|QA1_nN`Hgg6}1`7re26F~Y1_lOJMh1ok0R~0} zEe34{MzCoH42%qn3=9msT3Z-|k1?>bEN5V0UITUj$P_lPqz!`(NH+r$w*yGEB7-i} zEum1isDN}IXW-t=AQriuL1I6MyM;m02jnv0Ee!Ho8HBYrzzr2+U}a!naAaU-aAM$R zaA6Q6sSs;jMT&wMg}$?zxDHQI>Sbrp zU}WG$3L_OmE(Uc5Es%BEj0^%AK1g!bnqiC#oWYstd5I;ZMX8{`1-Z{A#MRo)nvsFU zIX@+pk%8YQGcVPzG&d==C?qi{CzX+bH9svawFrmfqZk=@gG&;Vvwaf_pz7H)LR_si zqZk=j3i5Mu7#Tz~G_kqdoRL8Q5pWO>F*2}fXok3gTvL#mn$5_-ky(;jlvt8q#K<59 zGX|W7JfY&&j11CPC1BoS*3k51WH7ODwZe3S9YhFhAWEWyY32&fFD*(=b;|^Wg8))k z>VaI&$iVHFT3q6r3JR=ZMg|_wyu8#R=bXgi;?!aWMFtKACI$uuW(FouT4rEm&|zR; zU}Df^U;?FC6uuCHFarYv8v`RKuP`t&=rJ%b*f20LFfuSOh-htRVANvV%D@gHc(s_f zG6-yBU|?Wm&}U#^5My9vU|`^8U}4~4;AG%s;A7xp5N62xenSq&s zfx$)lI0Nr)29Zc1vF!{J`*$-)M`~|pkoDEt!oYi+K|o6fWQWdH2Hxci0w6J+tqckv zL0+xMEerxI30oNiSk{330J2$&fs28GL70JsL4<*iL5xA1L7YL3L4rYpkN3`PvPVApUmFme82kYi^sgF427fsw%y?idgc6!^j*tB*6VGcIS~0x`ER zC?o6w#TNsE5!gI-1}1JdRMV^&tf5|0WMBqICFgDi^+>Jl44NP_An^w=!yM`e8wN%O zAqHD$3Xo-B1Z!i}+QJ|J3V38Kz6>l-O?C|SVDCFHI5IFWurM$(s53Z$102L+0096< CRS--7 literal 0 HcmV?d00001 diff --git a/DEV3.2/Files/chaine/LinkedQueue.java b/DEV3.2/Files/chaine/LinkedQueue.java new file mode 100644 index 0000000..e54c833 --- /dev/null +++ b/DEV3.2/Files/chaine/LinkedQueue.java @@ -0,0 +1,79 @@ +import java.util.AbstractQueue; +import java.util.Iterator; +import java.util.NoSuchElementException; + +public class LinkedQueue extends AbstractQueue { + + private Node head; // Tête de la file + private Node tail; // Fin de la file + private int size; // Taille de la file + + public LinkedQueue() { + head = null; + tail = null; + size = 0; + } + + @Override + public boolean offer(E e) { + if (e == null) { + throw new NullPointerException("Les éléments null ne sont pas autorisés."); + } + Node newNode = new Node<>(e); + if (tail == null) { // File vide + head = newNode; + tail = newNode; + } else { + tail.next = newNode; + tail = newNode; + } + size++; + return true; + } + + @Override + public E poll() { + if (head == null) { // File vide + return null; + } + E element = head.element; + head = head.next; + if (head == null) { // La file est maintenant vide + tail = null; + } + size--; + return element; + } + + @Override + public E peek() { + return (head == null) ? null : head.element; + } + + @Override + public Iterator iterator() { + return new Iterator() { + private Node current = head; + + @Override + public boolean hasNext() { + return current != null; + } + + @Override + public E next() { + if (current == null) { + throw new NoSuchElementException(); + } + E element = current.element; + current = current.next; + return element; + } + }; + } + + @Override + public int size() { + return size; + } +} diff --git a/DEV3.2/Files/chaine/MergeSortQueue.class b/DEV3.2/Files/chaine/MergeSortQueue.class new file mode 100644 index 0000000000000000000000000000000000000000..3a658486699ab82cca4854666e3bb8e946da4395 GIT binary patch literal 2616 zcmX^0Z`VEs1_mdFDlP^l24;2!79Ivx1~x_pfvm)`ME#t^ymWp4q^#8B5=I6#o6Nk- z5<5l)W)00SZUznpPId+^9tLg(9!3U!u=3K9%pCo|($vyaMh2GR%&JtdT2FQcK1K#^ zpUk}M)D*BR7XvQ?GZ%v(gAhA|Fb{(WgD4{dpKoeWdTMZfQ3+THBLjPJa%NsiY7rxY znT8LV@z#U|G{Zm^i1RQ=Fi0{ou$B~Mf{aqZG)fc0ERaTN9tIf(Sw;rVw9?|t{JcDn zW>ZYf7<}I7IfgW<_Q(I=4NnWaAs$4;bCwEg^ExXDD|Q!VPs&>NG$eC zttbJhb?0I500&ZDYDEbrgBOE0JA)4ogD-<0isynWi%U{-85x-KOG_9TL?N-AnXeyE zl$lo&TvC*pm}@P>z`zi|!w|?2#K<6?o0y&IoS&DRSQ4IDlHr`6S6q^qS5nN#poSci zP%k3;8X87i3?U4m>vT)p$juIMB9WQn+GXha2f-# z8Qm1@qMBih3@Kzf7l(=1g&7%GauYN2KziOD7TMU{*UGoXHNE7#NJSb~3OtGO#RWVAa~N zn}IiSI|IKDl=juq*4e=zpuK}Z%tvPjgP1RfE46`vfq@BZt`Y+W0|Ns)0~Z4a0}lhJ z?&D>UVc=s>Vi06dXAol0VGw0VU|?WiW?70xIi@| z)K!l_tp^4MhAHr1fLiRM4P`iM?PSnmWH`W}s|{o9WYA|~n9Cprb=v_3U5L|{|39Lm z4fYC>&_cJhG;~@L40Gwz`< zV94OYV8-Ci5Xj)c5Xa!jkjUW0kjdZ;_Kh+F%YOy|23B^4bas%h(is^U7=AD){AJ(< u^PPS%C^IlKWP%f27DF}z0|N&GBSRhoBSQ{D2?MB3VPq&}C}*f-kOTms35pm1 literal 0 HcmV?d00001 diff --git a/DEV3.2/Files/chaine/MergeSortQueue.java b/DEV3.2/Files/chaine/MergeSortQueue.java new file mode 100644 index 0000000..20fb3db --- /dev/null +++ b/DEV3.2/Files/chaine/MergeSortQueue.java @@ -0,0 +1,76 @@ +import java.util.Queue; + +public class MergeSortQueue { + + // Méthode de tri principal qui effectue le tri fusion + public static > Queue trier(Queue file) { + if (file.size() <= 1) { + return file; + } + + // Séparer la file en deux moitiés + Queue file1 = new LinkedQueue<>(); + Queue file2 = new LinkedQueue<>(); + scinder(file, file1, file2); + + // Tri de chaque moitié de façon récursive + file1 = trier(file1); + file2 = trier(file2); + + // Fusion des deux moitiés triées + return fusionner(file1, file2); + } + + // Méthode pour diviser une file en deux moitiés + private static void scinder(Queue source, Queue file1, Queue file2) { + int taille = source.size(); + for (int i = 0; i < taille / 2; i++) { + file1.offer(source.poll()); + } + while (!source.isEmpty()) { + file2.offer(source.poll()); + } + } + + // Méthode pour fusionner deux files triées en une seule file triée + private static > Queue fusionner(Queue file1, Queue file2) { + Queue resultat = new LinkedQueue<>(); + + while (!file1.isEmpty() && !file2.isEmpty()) { + if (file1.peek().compareTo(file2.peek()) <= 0) { + resultat.offer(file1.poll()); + } else { + resultat.offer(file2.poll()); + } + } + + // Ajouter les éléments restants de chaque file, s'il en reste + while (!file1.isEmpty()) { + resultat.offer(file1.poll()); + } + while (!file2.isEmpty()) { + resultat.offer(file2.poll()); + } + + return resultat; + } + + // Méthode de test pour le tri + public static void main(String[] args) { + Queue file = new LinkedQueue<>(); + + // Remplir la file avec les arguments passés en ligne de commande + for (String arg : args) { + file.offer(Double.parseDouble(arg)); + } + + // Tri de la file + Queue fileTriee = trier(file); + + // Affichage des éléments triés + for (Double valeur : fileTriee) { + System.out.print(valeur + " "); + } + System.out.println(""); + } +} diff --git a/DEV3.2/Files/chaine/Node.class b/DEV3.2/Files/chaine/Node.class new file mode 100644 index 0000000000000000000000000000000000000000..69e37217f86b223c0f4c45d2790be101798bfb23 GIT binary patch literal 408 zcmX^0Z`VEs1_mbvNiGH^24;2!79Ivx1~x_pfvm)`ME#t^ymWp4q^#8B5=I6#o6Nk- z5<5l)W)00SP6iGJPId+^9tLg(9!3ThzxVm<-^jqgz{nuNz`(%Az|6qFz{bGBz|H^)L5PW>3`|h7#TdlFc1QpKNW4w` literal 0 HcmV?d00001 diff --git a/DEV3.2/Files/chaine/Node.java b/DEV3.2/Files/chaine/Node.java new file mode 100644 index 0000000..1ccfdf3 --- /dev/null +++ b/DEV3.2/Files/chaine/Node.java @@ -0,0 +1,9 @@ +// Classe interne pour représenter un nœud + public class Node { + E element; + Node next; + + Node(E element) { + this.element = element; + } + } \ No newline at end of file diff --git a/DEV3.2/Files/tableau/Arithmetique.class b/DEV3.2/Files/tableau/Arithmetique.class deleted file mode 100644 index 425fcb84ab7dfeea61ca9a5a3998d07e651a871b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2278 zcmX^0Z`VEs1_mdFGA;%t24;2!79Ivx1~x_pfvm)`ME#t^ymWp4q^#8B5=I6#o6Nk- z5<5l)W)00SP6iGJPId+^9tLg(9u(!lmBl5gxr_|V`K2X{45B_@gEI5=1Bx>9N`gy@ zQWJBnIT-jD863h=OEYtFQmYiw@=J^IGK&;S^HLR3D+-EIi;FY!^Au9^6!P**5=%hr zg8ZEPyu{4nRE5mEvecsD!z)wuxEKT&1lbvcco>8kL>L)_vDn1Oz+M2dHz$vgK~w|c z7OpXZEJVE|rD@g<;B~b8tgM8=1$e@O-3Fb_sz=Ng$AqEBpKOP2u zh5$we@!Z7hROkG>>jxKoka4`fkgz+$hGej^laHXe~_@)*YC#I*O$2!z5 zAqGYUKX!&_Mg|^uSQnP2GBU70QYF7nW?rgaX>L+#5jbTtGO*+(X6At+I~p?>G{YDf zc!Nt4le2vj3&85x8Il+ogs~`PWZ(+UFD*(=g(OZvWZU&X34oD7z$rh!q`0IgvA{RA zBqKkin1dmmk%8G(fsunDlaavy8bUewMa2p!sR}vjhgX8qA|$JW1(1pXD+NY=Him32 zh8%`mc7{AqT;($|sDNyO6i}IYW%=2u`jBveM4ww?a!GzsB_qQOetvdofi-53Ac>%845=(g#iATJr2N4}rZsX3fg0hQn3EHnS(0ka$iU;7mzP@P zoRe5woLbDzP{hcfis2`0PGx5(VPufQuauF24dO2bMTRH_CI%2-VqgT7?F@_zF$@e0 zvJ8w2j0_A6tXkU{7&kI7FfcO2GB7Z(fdv^EI2qy?;vq_zCNVHGa4|429?;r1i-Bho z1G^CKHU|EUyBS0yw=;ca#$?7W$+nF_Vl~L} zbOr_n76t|eZ3YGgEd~Y#T?PgQD+UGzeFg@GCLm@mc(;tNQ!32A`&Y;0!iqU@^}7#J>qEMs6`UF$2v+QI1&*yt^4}BZcg@GdS)CTabg$E2u5Wx`V+PCeXsdxcuKd?VSwnj0`Lb z7^F5autN;r!Qi!v!Iyzy8w3Ax25wOF1cI5uzMB}>b+$2t?qY}p%Wh;~WDsLq!?>Oy zn1Kl#+hq*0;CNwWU}fNCU}NB8;9?MC;APNa;A7asAjoi!L5SfYgDAs$1~G=e4C0L3 z3=)id4AP7S3^I(y4DyVQ3<`|?42p~)3`&e~3@VH{462Oz3>u8J47`lZ40?>c4El^q z7z`QLFqko}XE0&hz+lR_pTV3Vfq{X+hC!I`KLbAlD?39XJA*bmLn0$11H(TCM|K8D zb_PjCetv!)ITan1zYJQ8j6WF!elYO~XcVcG<=4W7LNM>MQU}8vNNM&GP;A3E7 c$YNk*NCT4@3 queue = new FileTableau<>(); - - try { - for (String token : args) { - switch (token) { - case "+": - // Addition - queue.ajouter(queue.retirer() + queue.retirer()); - break; - case "-": - // Soustraction (attention à l'ordre) - int b = queue.retirer(); - int a = queue.retirer(); - queue.ajouter(a - b); - break; - case "x": - // Multiplication - queue.ajouter(queue.retirer() * queue.retirer()); - break; - case "/": - // Division (attention à l'ordre) - b = queue.retirer(); - a = queue.retirer(); - if (b == 0) { - throw new ArithmeticException("Division par zéro"); - } - queue.ajouter(a / b); - break; - default: - // Si ce n'est pas un opérateur, alors c'est un nombre - queue.ajouter(Integer.parseInt(token)); - break; - } - } - - // Le résultat final doit être le seul élément restant dans la file - if (queue.taille() == 1) { - System.out.println("= " + queue.retirer()); - } else { - System.out.println("Erreur : Expression incorrecte."); - } - - } catch (Exception e) { - System.out.println("Erreur lors de l'évaluation de l'expression : " + e.getMessage()); - } - } -} \ No newline at end of file diff --git a/DEV3.2/Files/tableau/ArrayQueue$1.class b/DEV3.2/Files/tableau/ArrayQueue$1.class new file mode 100644 index 0000000000000000000000000000000000000000..a6d81dfd33f9f41142bd97fb1820392d05312fd6 GIT binary patch literal 1008 zcmX^0Z`VEs1_mbvYfc6x24;2!79Ivx1~x_p9>=1h#LB?Z)Y4QHLq-O+l8nq^6$3^F z9v_5+H5UU111CEJ7Y_qB0}msEKvrT|qJB7O!WaOs=Bo-y+rk11@6*DsM2A3ozXZt1=K$WoMfjuIkp^51RMh4E{ z%=Em(lG377Mg~?5%@9{>Mh0z6g%A-GciM!wTH9GOGH?awmlh?bx@Cgg!;gp)J&@NJ z8TeiEl5_HlGxO3RPUT@RXRu&o;K+n~R}AJd6yvQK894k>i%UH6i%S?8cs%p+Qj45( z5{rvdiy0Icm>4)17#Y+Vm>HNrQO&@>zyyj<1_l8EQ2JwFU|?ooVBluZWME>@Vqjo! zVPIllVqjoU(9+(@z^JvIfn7^$3j^a82HvdACMD;SrVXP`wBp=j@-f^$&#{_K~j4I+%72wHUPGVlVzJF3yYH|rD13Lo` z4+Ad)A0q=tYEEiyYF6xC|Iy0 zF*64wAkM=e0Tw9EtV(5PkYZ$zLzw1Qnv)ZdpP5&ZTI5=hoLW$lnV-kOAj8O@?UP!p zaCl|T;gw)VDCCvq7Aqu{mgE;@79U<&tjEP5$sh*`4|zrgQ4J)w z2A33N=A~O}hH){lGbr*fD1kzZuP8MoGdDG_I5R&lFSUrBL4}cl2N5zVhFlEF3~C_b z)EOE0HGB|K)|z3A3<92ho*|x&KJm_u0gld|A(4y>yw3S~#U+V(C1Hsx@aF~;N8t287U;a zok4cL))odatt|}P`xY>;Yi(mt0I{{UFbHc0Yk?@11dzbKf~^d~T9I2A#8?uxGKjIP z0XrUKyAlHj0|SFN0}F!$10RDFgA{`_gB*h_g9d{fg9U>;gA;=SgCPS00}BHaA3ro8 zj2IXhj2TRz?ka-1%M#?0Sq!X<8$dQ{ZDHUy@`14!!H(faIEEkMn3SyyV%i(vj*(+v zXJBAZWngDeW8h@aU=U`|WRPXhV$fyKW-w>a0Xu}5fsqsH4pRn31~a%jtf0Xz3ULQJ z<8lTbnEgfwJJ`T+V+b~joq>tlgPj4{JP8JKXf(<)FoKn`g3JR27$mwN`pp;^87vqq zp+TU?zzkN(xtl>bQfoVdD#$uy<BfXb_ z)0f#!7G&ch23Z{tgBui*vd~yG3T|O$T>k%|mJU2cfz)ng5C)|uCUANJ1swxJ2m=R0 zC<8A;7=t)NID extends AbstractQueue { + + private static final int INITIAL_CAPACITY = 10; // Taille initiale du tableau + private E[] elements; // Tableau contenant les éléments + private int head; // Index de la tête de la file + private int tail; // Index de la queue de la file + private int size; // Nombre d'éléments dans la file + + @SuppressWarnings("unchecked") + public ArrayQueue() { + elements = (E[]) new Object[INITIAL_CAPACITY]; + head = 0; + tail = 0; + size = 0; + } + + @Override + public boolean offer(E e) { + if (e == null) { + throw new NullPointerException("Les éléments null ne sont pas autorisés."); + } + if (size == elements.length) { + redimensionner(); + } + elements[tail] = e; + tail = (tail + 1) % elements.length; + size++; + return true; + } + + @Override + public E poll() { + if (size == 0) { + return null; + } + E element = elements[head]; + elements[head] = null; // Libération de la référence pour éviter les fuites mémoire + head = (head + 1) % elements.length; + size--; + return element; + } + + @Override + public E peek() { + return (size == 0) ? null : elements[head]; + } + + @Override + public int size() { + return size; + } + + @Override + public Iterator iterator() { + return new Iterator() { + private int index = head; + private int remaining = size; + + @Override + public boolean hasNext() { + return remaining > 0; + } + + @Override + public E next() { + if (!hasNext()) { + throw new NoSuchElementException(); + } + E element = elements[index]; + index = (index + 1) % elements.length; + remaining--; + return element; + } + }; + } + + // Méthode privée pour redimensionner le tableau lorsqu'il est plein + @SuppressWarnings("unchecked") + private void redimensionner() { + int newCapacity = elements.length * 2; + E[] newElements = (E[]) new Object[newCapacity]; + for (int i = 0; i < size; i++) { + newElements[i] = elements[(head + i) % elements.length]; + } + elements = newElements; + head = 0; + tail = size; + } +} diff --git a/DEV3.2/Files/tableau/File.class b/DEV3.2/Files/tableau/File.class deleted file mode 100644 index 42ef4dde2fc5e5f71dde74412cf4456c348f9a81..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 315 zcmX^0Z`VEs1_mbvVRi;4Mg|tQ%$!tq1{OvJfvm)`ME#t^ymWp4q^#8B5=I90#H{?% zlGGwb22l+kbZKkNFh&N>;LP;A#FEmYR7M6ijSyF`AbU}2NoEm9n}~)crandnRt?P% zS8GNFwvxomoSalf24)RSPeumz)Z&t`%oGSeijhIX#?=Z_yB($wBLi1(erZv1D#$a8 z44fcJ59D4pMg~R(W(E*oVPRxoWng1qWMF4tU|?e4U}0q7WZ;7Hxmg$)co=vYKtaLB QzzV!Z diff --git a/DEV3.2/Files/tableau/File.java b/DEV3.2/Files/tableau/File.java deleted file mode 100644 index f0452b1..0000000 --- a/DEV3.2/Files/tableau/File.java +++ /dev/null @@ -1,6 +0,0 @@ -public interface File { - void ajouter(E element); // Ajoute un élément en fin de la file - E retirer(); // Retire et retourne l'élément en tête de la file - int taille(); // Retourne la taille de la file - boolean estVide(); // Vérifie si la file est vide -} \ No newline at end of file diff --git a/DEV3.2/Files/tableau/FileTableau.class b/DEV3.2/Files/tableau/FileTableau.class deleted file mode 100644 index 88e2b3f26193f9cfcf7f46cef4d6b737ea501b4e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1099 zcmX^0Z`VEs1_mbvGcE=u24;2!79Ivx1~x_pfvm)`ME#t^ymWp4q^#8B5=I6#o6Nk- z5<5l)W)00SP6iGJPId+^9tLg(9!3Ukx6GW>ki?{%)WlLo2DXyK%$%H5Mg~StkUBmd z27Ztt)|Aww(h`t}AP<8ONQ5~pGY`ZU;b9PE5MyNENX<#jP0cGQW@HeK_Ca@oH5UU1 zg9HzQB!d(q1AA(5Nmyn|D%d$u>4`bPC5a`et`*6t1tppJc^nLK zj0^%ki3(|%IjIV%#U%=5nJKAU4AKk=AYUsoGKgv*SsGkYl$n=qtr^D7pv=g?0`egv zgP^lxfTOc#h--~}3ULNS1`Y-$21W)Y237_s1{DS#21W)| z1_lNu1~mpIP{cAYGN^<38VpRJ^a5t{Gw^_EAu!F#zz9ls42%q#3=9mOVDlIlWVN<4 zFlsSxWnc#pydXkAOF(2V1JhOp;f)Lo42%p~3=9lX3~USx44e!s3@i+s46F=%3~UU- z3|tH{4BQNi4B8Aj3`|gCnHiWE7#LKwwlD~5ZDA154%PxuED0cieFa+?1hgWzFtD>E zY-M0a7%#-Y!oa}5&%nhXz#zpS$e_X?1oe+D10#bTgFe*wDh7!0j#}Fo#Ah<_?q-mV z6q4P}Aip1Eyw(;5ULzkEixF%yFT!SCh|MWm8Q8TqfCC2PGdTu!1_lN(26hH<20;c% z25AN<22}=W22%zZ273ls1_K5L24)6EL8yBS85kM38H}KzD9gaez{tSBz^b){fqe}; zwAjFcN(_vkj09C`09DEhQaX!)on<)#3o}Ry6F7h&TGYYTu`)1mJ1{aZL9H}qFaf*P F6aWSt!i@j` diff --git a/DEV3.2/Files/tableau/FileTableau.java b/DEV3.2/Files/tableau/FileTableau.java deleted file mode 100644 index 68aa114..0000000 --- a/DEV3.2/Files/tableau/FileTableau.java +++ /dev/null @@ -1,41 +0,0 @@ -public class FileTableau implements File { - private static final int CAPACITE_INITIALE = 20; - private E[] elements; - private int taille = 0; - private int debut = 0; - private int fin = 0; - - @SuppressWarnings("unchecked") - public FileTableau() { - elements = (E[]) new Object[CAPACITE_INITIALE]; // Création du tableau initial - } - - @Override - public void ajouter(E element) { - elements[fin] = element; - fin = (fin + 1) % elements.length; - taille++; - } - - @Override - public E retirer() { - if (estVide()) { - throw new IllegalStateException("La file est vide"); - } - E element = elements[debut]; - elements[debut] = null; // Supprime la référence pour éviter les fuites de mémoire - debut = (debut + 1) % elements.length; - taille--; - return element; - } - - @Override - public int taille() { - return taille; - } - - @Override - public boolean estVide() { - return taille == 0; - } -} \ No newline at end of file diff --git a/DEV3.2/Files/tableau/MergeSortQueue.class b/DEV3.2/Files/tableau/MergeSortQueue.class new file mode 100644 index 0000000000000000000000000000000000000000..c6b218232e1b2b7d709da7891967684e2217082d GIT binary patch literal 2615 zcmX^0Z`VEs1_mdFDlP^l24;2!79Ivx1~x_pfvm)`ME#t^ymWp4q^#8B5=I6#o6Nk- z5<5l)W)00SZUznpPId+^9tLg(9!3U!u=3K9%pCo|($vyaMh2GR%&JtdT2FQcK1K#E z$D*RdO0Xms11|$J7lR;!5Ich~4}%DUC?f-(Z)#C`YH)s030Mgu1AB3DW?o8a5hH_{ zh7X$Q)`SH#!$1~@^Dsy-NHQ|8mK0@zj8efgN)y8@kVa`91{nrfMh4Eb(&EhgygZO* zQ%ubmdNEA{1(ZAwg93vhBLho8eohV}gNO!H8B*|CgVZVWFsLx7GBU8{r=@{x6ouM| ztWGluq*9%SL4!e)k%2w4*fqDHq!Jv^U>R*51|5i9sj1oQ40?_1xn&@$uCXHNo8c< zE=VjYPKEJMObIS2%FIi*)^q`xV#UK?&0xdGz+RS^Q=00Z2C~rwIXECjfP=%1hryn~ zfsuhDvm~`Bu_V8UkwFX=bl{}s2^F{IW^iI~W@m8WVQ>Y7icl6P@uDbUWMI!oEcQ#S zC;_Q;=V9;w2U1>YMF}T^7lSuDgAWgbFM}V7=YlJXOHy+g8JP1+OBfkMA+epAuOCp9 znO72AQk0sQYc0gUz!1R05Xcb3$RM7Zn4RjJpO>6i5}sL-;hdjWT#}eqQq0Jph8&Yn zFCzOI8b(|UAq=7H3}HMB;S3Rs48mZ4pjybtz*+#Z9u#m82Z3W2YJg@K2SXGi0|UsQ z7#@aLkSXk7^*MQr3@pz1DXEMM{63j^seYxoNvTC4ptQiqz#CkWn4ImKSODd724|+{ zC6<&Hr7|-3*@ReGA=!jTLpC8H)^^r*P_Kc58=QF|;!y9Q3o|lA+k_yS2Ps}~8UwKz z-4yJinqiC#DP%eqhl$vQ85vk|6EpKb=`k9j0yPrY88R3dgt165GH?awmlh?bx@CfL zjWBAdrw58}Mg{?={QQ#QlA^={-_(+f{FGu2hFnGlCPoE*HimpIh608{c7`HQk}GCp zPyuOyl+&4cW%=2u`jC_WNri5S$tC$km5dBCppgW2CR8EBaF4{il$_LJ6`%b4?9u{g z$qH5mF$h@%MPo>1K`OE&R5`Mzp-~G>31CB^MmQ(t;^Nd| zc7`%W22~6{VRI@wLj@y)9Db#Y3~Ug8F(@(!GB7cK04oC{sET7?WQb#6V31{CWME`q zU|`kS&cL{lfq{XMA)bMOfekFk%)kk%KNy(6O7j_*8JHOu7>u-bGO#l;uq962W6)!eXRu>X1iOZtf%z{37bD{@1}O=stCAVGKs6-P zRgXZ82L=X)Dez!`TI{0@WjJf?WYA({IKZH*4P)$N&}U+p%OD1I+W`h$h|`z0VGBNHo@O$?rrEV~%|85p)P1TX)8e-neJP~c$Kc73$l%40$>0t4jWPqve+B^tR(6JTc95^q85tQEelRHfW#9($ toqjPWGcYq`f)ia9LpB2g0|x^mLmmSoLk>d;1E@}6WGH1QXQ*V51OOtBiN62< literal 0 HcmV?d00001 diff --git a/DEV3.2/Files/tableau/MergeSortQueue.java b/DEV3.2/Files/tableau/MergeSortQueue.java new file mode 100644 index 0000000..1e1149b --- /dev/null +++ b/DEV3.2/Files/tableau/MergeSortQueue.java @@ -0,0 +1,76 @@ +import java.util.Queue; + +public class MergeSortQueue { + + // Méthode de tri principal qui effectue le tri fusion + public static > Queue trier(Queue file) { + if (file.size() <= 1) { + return file; + } + + // Séparer la file en deux moitiés + Queue file1 = new ArrayQueue<>(); + Queue file2 = new ArrayQueue<>(); + scinder(file, file1, file2); + + // Tri de chaque moitié de façon récursive + file1 = trier(file1); + file2 = trier(file2); + + // Fusion des deux moitiés triées + return fusionner(file1, file2); + } + + // Méthode pour diviser une file en deux moitiés + private static void scinder(Queue source, Queue file1, Queue file2) { + int taille = source.size(); + for (int i = 0; i < taille / 2; i++) { + file1.offer(source.poll()); + } + while (!source.isEmpty()) { + file2.offer(source.poll()); + } + } + + // Méthode pour fusionner deux files triées en une seule file triée + private static > Queue fusionner(Queue file1, Queue file2) { + Queue resultat = new ArrayQueue<>(); + + while (!file1.isEmpty() && !file2.isEmpty()) { + if (file1.peek().compareTo(file2.peek()) <= 0) { + resultat.offer(file1.poll()); + } else { + resultat.offer(file2.poll()); + } + } + + // Ajouter les éléments restants de chaque file, s'il en reste + while (!file1.isEmpty()) { + resultat.offer(file1.poll()); + } + while (!file2.isEmpty()) { + resultat.offer(file2.poll()); + } + + return resultat; + } + + // Méthode de test pour le tri + public static void main(String[] args) { + Queue file = new ArrayQueue<>(); + + // Remplir la file avec les arguments passés en ligne de commande + for (String arg : args) { + file.offer(Double.parseDouble(arg)); + } + + // Tri de la file + Queue fileTriee = trier(file); + + // Affichage des éléments triés + for (Double valeur : fileTriee) { + System.out.print(valeur + " "); + } + System.out.println(""); + } +} diff --git a/DEV3.2/arbre/infixe/Infixe.class b/DEV3.2/arbre/infixe/Infixe.class new file mode 100644 index 0000000000000000000000000000000000000000..dcc4af678f5c3dc7dd82985d3c703dece1f1adcf GIT binary patch literal 2158 zcmX^0Z`VEs1_mdFaxMlY24;2!79Ivx1~x_pfvm)`ME#t^ymWp4q^#8B5=I6#o6Nk- z5<5l)W)00SP6iGJPId+^9tLg(9u(!lmBl5gxr_|V`K2X{45B_@gEI5=1Bx>9N`gy@ zQWJBnIT-jD863h=OEYtFQmYiw@=J^IGK&;S^HLR3D+-EIi;FY!^Au9^6!P**5=%hr zg8ZEPyu{4nRE5mEvecsD!z)wuxEKT&1lbvcco>8kL>L)_vDn1Oz+M2dHz$vgK~w|c z7Okn z2ZJgj1EVengE}JvV+99;CL;r*J~x9lgAO}`E)RnqgFYhzKf-}vw=ps>7vvW(GKgqs zB6$jGBs+s4BLj<}&H!(ZaIX^Es zu_QdRB*QsBuec;JucVlfK@FQjkOCTN7zaZLBZItaQBi7Xk%EQ zsf-LPkmSYhlbM(5SDKrYS`?C)lmn8;P0Y+=WDwJc#&n!!7$XC3a7kivwr^qqSUo#K zG9!a97Nv{~T*3LJMaijdnIKcSA@=HlB8!nhz$rh!q`0IgvA{RABqKkin1dmMk%8G( zfsunDi;=+q>iwMjqGE-VRD~S%!z;@Yb4nrE7A%02rL7bg`Pmq9xEOL7^4J;jK@m~F z$e;qU2~yZ(=9T4Vr|Lrj7!o&biOD7TMU{*UGmv8isu1EPkHox`oYZ0!pZxsn(gJJD zz(5i~(HK%$kcve)av1r8i$81Rdo<3Fa~Pvo5jGhiGf{+cN+u$#@!5} zk=q%>eYAXa_SrF;v52zBE@F76Bg$fA#VW~a#l~dDF3GlyL1Hz?@^l6U1{MYe25klg z1}z2#23-aQ1}g>z27LwwhA0LGh6)A-1}{lAA-Qb~3NsnZn9bOiGZ;v+38{ejYAhhW zf+U-e8kjG}3gQb$vI%K``D|=v?4sIy21_P}^j>RymvA9Gcasp;9t(b4GOPdFjE*R8@>zVWl#_@ zFfxcS+A=yYgfcLJgFlQxl!1YPoq?5sgMpWUlYx(che3>ipFxX3fME}V7{hS}afV9_ z5)5A$BpJRl$S`s;@H6r=C^1ShC^ITEs4yBas4|)|s4?0yXfrx6Xfir7XfXyb=rANQ zFfg<;2=e`B;AdcEXGmga&}L^yVq|1s_y;O$CD|Dy8TtA7dF1{xXfkjiDPU&+%ds;U zurnBdDtm1XhRYlbm;W;`;!(%K&Hz=%&LH`df$s-{;132?Rdy$KhERS6W`-071_maE mRE9JL1_nL`CWdSVMuv1SnaNPdz`(%8z{pU stack = new ArrayDeque<>(); + + try { + for (String token : args) { + switch (token) { + case "+": + case "-": + case "x": + case "/": + // Création d'un nœud opérateur + Node right = stack.pop(); + Node left = stack.pop(); + stack.push(new OperatorNode(token.equals("x") ? "*" : token, left, right)); + break; + default: + // Création d'un nœud opérande + stack.push(new OperandNode(Integer.parseInt(token))); + break; + } + } + + // Le résultat final doit être le seul élément restant sur la pile + if (stack.size() == 1) { + Node result = stack.pop(); + System.out.println("= " + result.toInfix()); + } else { + System.out.println("Erreur : Expression incorrecte."); + } + + } catch (Exception e) { + System.out.println("Erreur lors de l'évaluation de l'expression : " + e.getMessage()); + } + } +} diff --git a/DEV3.2/arbre/infixe/Node.class b/DEV3.2/arbre/infixe/Node.class new file mode 100644 index 0000000000000000000000000000000000000000..a669716e8f8672f638fb96692a00125511484c32 GIT binary patch literal 223 zcmX^0Z`VEs1_mbvel7+k24;2!79Ivx1~x_pfvm)`ME#t^ymWp4q^#8B5=I6#o6Nk- z5<5l)W)00Sb_Nbc1{S~klvG9r7H2TU?~|FA>Q|bZlv)&$n3R*s$iQBb@0pjDS;5F4 zqM_-7Ffq8KC^IkJnvsDkIKQ+gIn^x_q?!|CnjT0Miy{L%0}}%XFflNK9K^uLz{$YC vAj`nWz{tSBz^b*KfpH@P0|O%i7Xt$W8(5Hug^_`qfd?$g%fP_E#J~pt>W?W# literal 0 HcmV?d00001 diff --git a/DEV3.2/arbre/infixe/Node.java b/DEV3.2/arbre/infixe/Node.java new file mode 100644 index 0000000..cce23ac --- /dev/null +++ b/DEV3.2/arbre/infixe/Node.java @@ -0,0 +1,4 @@ +// Classe représentant un nœud de l'arbre de syntaxe + public abstract class Node { + public abstract String toInfix(); // Convertir en notation préfixe + } \ No newline at end of file diff --git a/DEV3.2/arbre/infixe/OperandNode.class b/DEV3.2/arbre/infixe/OperandNode.class new file mode 100644 index 0000000000000000000000000000000000000000..6ea90de265151efac3b5868190d04cf72e70925e GIT binary patch literal 381 zcmX^0Z`VEs1_mbvDJ}*k24;2!79Ivx1~x_p7Qg(IR7M6io6Nk-5<5l)W)00SP6iGJ zPId+^9tLg(9!3Uk|AN$_#Jm)UO4hQ(oYGWA21ZXV20jLUb_M|+20;cPMh3yG#Ii*F zoW#6zeb2m-)b!LMMh1?O{NR$J%)E3)22l-9O&^33h_E#y1B-^IW*8#_i!<0A{63j^ zseYxoNvTC4iAg!Bj1250`JQ=cnH7u-A{tl?;0n$!ElN&x%LJ(wKys@d$TkK=1`Y-$ z1_lO31_qFK7#P4jRt8}PMg|cE1_mt#Ca?&X)^-L)E$OWc>>I(VMHv_v_!yWO7#LU> wSQuCtI2qU&7#YME#G(2W7#P83a%gQ~VBf*Oy8*5Xq>h1si-D0r0&JTk03;Yh4gdfE literal 0 HcmV?d00001 diff --git a/DEV3.2/arbre/infixe/OperandNode.java b/DEV3.2/arbre/infixe/OperandNode.java new file mode 100644 index 0000000..0b1538a --- /dev/null +++ b/DEV3.2/arbre/infixe/OperandNode.java @@ -0,0 +1,12 @@ +public class OperandNode extends Node { + int value; + + OperandNode(int value) { + this.value = value; + } + + @Override + public String toInfix() { + return Integer.toString(value); + } + } \ No newline at end of file diff --git a/DEV3.2/arbre/infixe/OperatorNode.class b/DEV3.2/arbre/infixe/OperatorNode.class new file mode 100644 index 0000000000000000000000000000000000000000..3aded562bb5dc336d926a842c4e97417b8fce713 GIT binary patch literal 1114 zcmX^0Z`VEs1_mbv3oZsG24;2!79Ivx1~x_p7Qg(IR7M6io6Nk-5<5l)W)00SP6iGJ zPId+^9tLg(9!3Tp|AN$_#FG3Xh*FMxD3_5z$R{hYEKxrvF)v*|xTGjEFWnlXmyd^m zpFx0;fh8w3t%Q+*%?G3rEF;9jAPkaWEy_&KDB)lbWn^H~0=Y<>he3itl97SEB;PYH zEwh4=K}16n({v#Q1_o&!1{nrfMh5ZR#Oze({JiAElJLxu4Cnm3;*!L?l43>%3k^)2 zm?Bt>XJn8E8Lz;|;6;=nL>bG-poq;daHv4SMl+0&fyEgd6Z}4zd8vM-xk;%-A&E&j zsf-M~!6k{w*}jPdP(D|1erZv1s#_*VQV=R2srOIH zN=+`YMvgnE5zdJ@Il-AFsn(1PJf3-ZsYT8?iN(dK#q10wj0~z6e!}Kdb_O#>208pn zLCG2HF9t;h4hAL$1_ovZ22eg>00Djm0T2aBQ|bZlv)&$n3R*s$iPvOA5fH%QjC^^+F6QrCIWSkyI6^kMRI|CB~2rw})f?UMF$iT_K wz#z-O$iT?Jz`&}toq=&90|Nsi0~Z4W0~=V7iG`7Yn}G)`%FDpOz{J1@068=%w*UYD literal 0 HcmV?d00001 diff --git a/DEV3.2/arbre/prefixe/Node.java b/DEV3.2/arbre/prefixe/Node.java new file mode 100644 index 0000000..8da951f --- /dev/null +++ b/DEV3.2/arbre/prefixe/Node.java @@ -0,0 +1,4 @@ +// Classe représentant un nœud de l'arbre de syntaxe + public abstract class Node { + public abstract String toPrefix(); // Convertir en notation préfixe + } \ No newline at end of file diff --git a/DEV3.2/arbre/prefixe/OperatorNode.class b/DEV3.2/arbre/prefixe/OperatorNode.class new file mode 100644 index 0000000000000000000000000000000000000000..9d023ede9f8336854abd636ff0c61ff0b7936a20 GIT binary patch literal 956 zcmX^0Z`VEs1_mbv11<(824;2!79Ivx1~x_p7Qg(IR7M6io6Nk-5<5l)W)00SP6iGJ zPId+^9tLg(9!3Tp|AN$_#FG3Xh*FMxD3_5z$R{hYEKxrvF)v*|xTGjEFWnlXmyd^m zpFx0;fh8w3t%Q+*%?G3rEF;9jAPkaWEy_&KC;>S|l!rl#L7b6+qa;6|C^ap!f{{T) zLle_nAqEBpNgf6%25CkH@!Z7hROkG>1oc2+ z#>gPxl%HQxTvC)+;G0^Kk)Kk`!Jy2@z{;q=sKCh2#-Pf@pvIui&Y%JEvnC^h3P=|u zq%-r%^0QN+0S*ZUx5VU<{Gv)mh8f6ihAM=Z?~$07l9O7j;*+1BU0Ps`H&jqGhEx`$ zVo@HAWP*QER%&vIHF79Ijc`uP$qCLZNwsEV;PK4MOD%HFNh~f-EoNuXVPsIn@Dnzt zvNPy0GRWaq3QA;Pe=#UBa4;}2FfcGPFo04o0|@Xl2!JS1(qmu%%d#@aFfcO6GB7aM zFfcK&FfcHPXl-X;)Y9I{z^4G1 od<@JC@?iHUFeoxGFmNz1GN>>xGAJ=9N`gy@ zQWJBnIT-jD863h=OEYtFQmYiw@=J^IGK&;S^HLR3D+-EIi;FY!^Au9^6!P**5=%hr zg8ZEPyu{4nRE5mEvecsD!z)wuxEKT&1lbvcco>8kL>L)_vDn1Oz+M2dHz$vgK~w|c z7Okn z2ZJgj1EVengE}JvV+99;CL;r*J~x9lgAO}`E)RnqgFYhzKf-}vw=ps>7vvW(GKgqs zB6$jGBs+s4BLj6i5}sL- z;hdjWT#}eqQq0JphRr2N0Sq;agCU5KLEg2fD7Cam!Aijukz_OTlJkp-Qj<$k_1GCg zU}+NUbJvRG)B;di=3)qD2;*T02RWN7J+;I)wYWGjJynQ-k-?9hA&QZK9paNzMg|s0 zy5jfA%uDqv%}q)z3Q0`L0ZHU0X67+6h-pM)x=u5Uk%2e3Br!SLH?aV$o}D3)kwF-X zQbq=@;QZ2}O+DU5<6~*$tC$km5dBCkmCia5aK3}#JrT8)M6E%{QT_F0&C3BKoUXG z7*bh~ibXkcAo+s}K5OJ01~tMtF()TDvn17;k%7lEFE6#oIVZ8WIJKCap^%Y56~j;1 zoXXBn%*Y^zUnwI48^m7>iVTqqObj5v#J~tDp&1w%q8S(%WEmJ47#SECShcn@Fm7aE zU|?j3VPIfj0}HY+a5BU)#6grYzG7fw;9_84bkf>4i-Bho1G^CKHU|EUyBS0yw=;)C7;LvQID-XSSQwZ8SJd9g;KsI(FG4L;E;06UyAebo(l?~m+5CN9m$iT=T#;C_=$PmoH1P<>o z22lnE26hHk1`Y;Z22KV(1|9}627U%D1_6dW3}Ot&8N?YbF-R~xWsqce!63u%i-Dh! zfkBCpi$R%Dgh7Q-nL(9NjX{l3k3pN!kU^8th(U|dkwJ$co`HeEh=HH)KLbAlD?391 zJA*bmLjofs1H(TCM|K8Db_PjCetv!)Iqe?|fH577#Nrsk{MDM i7#R2%m>4n{7#UK*WI97W0|NsW10zELLlHv>gCqb*L-C~m literal 0 HcmV?d00001 diff --git a/DEV3.2/arbre/prefixe/Prefixe.java b/DEV3.2/arbre/prefixe/Prefixe.java new file mode 100644 index 0000000..fb0bc7d --- /dev/null +++ b/DEV3.2/arbre/prefixe/Prefixe.java @@ -0,0 +1,45 @@ +import java.util.ArrayDeque; +import java.util.Deque; + +public class Prefixe { + + public static void main(String[] args) { + if (args.length == 0) { + System.out.println("Veuillez fournir une expression en notation polonaise inversée."); + return; + } + + Deque stack = new ArrayDeque<>(); + + try { + for (String token : args) { + switch (token) { + case "+": + case "-": + case "x": + case "/": + // Opérateur : créer un nœud opérateur + Node right = stack.pop(); + Node left = stack.pop(); + stack.push(new OperatorNode(token, left, right)); + break; + default: + // Opérande : créer un nœud valeur + stack.push(new ValueNode(Integer.parseInt(token))); + break; + } + } + + // L'AST final doit être le seul élément restant sur la pile + if (stack.size() == 1) { + Node root = stack.pop(); + System.out.println("= " + root.toPrefix()); + } else { + System.out.println("Erreur : Expression incorrecte."); + } + + } catch (Exception e) { + System.out.println("Erreur lors de l'évaluation de l'expression : " + e.getMessage()); + } + } +} diff --git a/DEV3.2/arbre/prefixe/ValueNode.class b/DEV3.2/arbre/prefixe/ValueNode.class new file mode 100644 index 0000000000000000000000000000000000000000..3971227bdd6c46472a7b9158d1657093bba90893 GIT binary patch literal 378 zcmX^0Z`VEs1_mbvDJ}*k24;2!79Ivx1~x_p7Qg(IR7M6io6Nk-5<5l)W)00SP6iGJ zPId+^9tLg(9!3Vvu*96wRERp(G7y`QfzgwTfscWook4(yL6AX+kwGvku`E$PCowNw z-!rcyH9fV6k%6NmKe(hQGcTQyK~%$2(+8mhB5cjbz@p))8OF%K;tX~LzfWdfs$Xet zQfg61Vp2{j*oc6l)U?bBMg|cLtR`>;=a&{Gr@Cc=l=H!zst2-+L6L!jfr){Efsug$ z@x pb_PZUF$Qs{J_QCwu$dfMTNv1PFz{}G>tX|ob2Bh9NPumV1OTjtLgxSg literal 0 HcmV?d00001 diff --git a/DEV3.2/arbre/prefixe/ValueNode.java b/DEV3.2/arbre/prefixe/ValueNode.java new file mode 100644 index 0000000..e89bcf3 --- /dev/null +++ b/DEV3.2/arbre/prefixe/ValueNode.java @@ -0,0 +1,13 @@ +// Nœud feuille (valeur) + public class ValueNode extends Node { + int value; + + ValueNode(int value) { + this.value = value; + } + + @Override + public String toPrefix() { + return Integer.toString(value); + } + } \ No newline at end of file diff --git a/DEV3.2/arbre/repertoire/Noeud.class b/DEV3.2/arbre/repertoire/Noeud.class new file mode 100644 index 0000000000000000000000000000000000000000..a8719bcdfd16a609f0624d18f79e1a4cbda24a09 GIT binary patch literal 1727 zcmX^0Z`VEs1_mdFWG)6K24;2!79Ivx1~x_pfvm)`ME#t^ymWp4q^#8B5=I6#o6Nk- z5<5l)W)00SP6iGJPId+^9tLg(9!3UMzx>qF6h;Q-y!>271|c7W?%%j%XjSMr%$6AqHV~1`!?xQ3f#-+k-2MOHy+g8JP1+OBfkM zAtq<$>jxBN=9L7O6s0ESS_?5SFi7w)NHRzDD(!-N9|58F*lham&m} zWn^GaPc89F%uQuv5YfQu6AlJFPz)=8j4|M0Fk~=dWZ=#$cF8PCO)kkVsszVw6iC*D zhryJ=jFEveC$qQ&WO^|pgP?|HG{l{m`T8I+Yas?E1|?7cS@JMgfgH*T4hN8k4M@Zm zEj%EJ$yzgvgTbDWfq{#GgTax9!HL0{k%2!M6jw#1nMJ9NMM*`ej11z?aDrK;2~8~^ zU9LO~ZVc{>3|z&jC9bga#H|5KP?}+k3@pz1DXEMM{63j^seYxoNvTC4iAkVP;teiI zOwRUAECBP_83foFd>I+|(Y(gUz!jWdT9lj$@+cz%7dWNrfx?@SLBJ_LzofXND6zmd zwIm}yrI>>uh>?Mbk&%NTgpq-nQ9*%&Aq*s7#m~kN!Nm~C5XH_A4T}C4Mg|p-8IZh{ znOBydovIH>jgVC9mI#fA8BpJY(<@XV#5Rw_yp){OVilkK{Or;KYeiVPeKObiTQ%+0{V00R6B0t^fcEDVectPBbaj0_$O3=C!r zOkg!aTH6^IwY0Y~uxl~zW#HJ#z`K!wfq{|1lYxOjh=GNHfq{d8g@KcSlYxstkb#?l z5tM?UW+*|;U<2t#(g!LQ85sB&SQ+>k7(rPPs=kDQnSqUgfx&VUgP^w776$fR4B`w7 z+Zd#^wlMJe>g=;)He(TGkzK?fr6bB>WW_4Us=bRr5u`$;g@tkX|7RelF@c>X#=r`8 zpa6p~gF1ragBJq>11|&9KL%-b25&~j9}F@KoS>Wnb-{TC7O=+D-3%O& zTH6@Zw=?MaXl-NApUDucwT;2pSLYamm(ISu3>V11KQP7QPE!WkGD0>NZ3m<(lzWdM~K Nj0|xM2@FXLk^oD9hqnL# literal 0 HcmV?d00001 diff --git a/DEV3.2/arbre/repertoire/Noeud.java b/DEV3.2/arbre/repertoire/Noeud.java new file mode 100644 index 0000000..a3a68f1 --- /dev/null +++ b/DEV3.2/arbre/repertoire/Noeud.java @@ -0,0 +1,42 @@ +import java.io.File; + +// Classe représentant un nœud de l'arbre + public class Noeud { + String nom; + Noeud[] enfants; + + public Noeud(String nom) { + this.nom = nom; + this.enfants = new Noeud[0]; // Initialement pas d'enfants + } + + public void setEnfants(Noeud[] enfants) { + this.enfants = enfants; + } + + public void afficher(String prefixe) { + System.out.println(prefixe + nom); + for (Noeud enfant : enfants) { + enfant.afficher(prefixe + " "); + } + } + + // Méthode pour construire un arbre à partir d'un répertoire + public static Noeud construireArbre(File fichier) { + Noeud noeud = new Noeud(fichier.getName()); + if (fichier.isDirectory()) { + File[] contenu = fichier.listFiles(); + if (contenu != null) { + Noeud[] enfants = new Noeud[contenu.length]; + for (int i = 0; i < contenu.length; i++) { + System.out.print(fichier.getName()+":"); + System.out.print(contenu[i]); + System.out.println(""); + enfants[i] = construireArbre(contenu[i]); + } + noeud.setEnfants(enfants); + } + } + return noeud; + } + } \ No newline at end of file diff --git a/DEV3.2/arbre/repertoire/Repertoires.class b/DEV3.2/arbre/repertoire/Repertoires.class new file mode 100644 index 0000000000000000000000000000000000000000..c90779050edc3c25e3e2cb3a12e5a0bae9a550e3 GIT binary patch literal 1438 zcmX^0Z`VEs1_mdFKrRL*24;2!79Ivx1~x_pfvm)`ME#t^ymWp4q^#8B5=I6#o6Nk- z5<5l)W)00SP6iGJPId+^9tLg(9u(!lmBl5gxr_|V`K2X{45B_@gEI5=1Bx>9N`gy@ zQWJBnIT-jD8FWI66Vp?z6hI0Tf>H}oi%Rk{i&BdfZ1VDR<5NoGiw>`Z3EFWn2rvk; zGYIi82s4N7$y;$iQ9zvLh#tkwH`gVlUVO!6ikRdFj@gVeAZIj0`+5t!|k) zsay=A3=$wOi-1^CJPgtdGK>uT>8T}-NyYg&r6s8Wi6t3~3?dqum<9?lFfhpRFvv3~ zFfxeeCT6EP=jSCSmV{@PWH{&N6_+IDl@v2Fs9|#orePram3SDG8B`b<*itJpi$Qvs zH8i7y7#JDkK(gvQ3>qL=?#yDB%%arflKi4dAqFOpq&9;NJA*C{gC2uEBLk~nerjn7 zBLjaj$Pq=QnMJ9NMM*`ej11yXr)1{qgFJ7o=>t}3&B0*E$iTqGpv_>+!(ajmUyj7I zw9Mp;)FO5UGe!n(q}X9(U~$e*No8c<_sPsl^()OyN-YXWOv*`RWMIin%*@kfssMbIU_YUGfyEczqBYXQ^87sk%PgBkwMERRRJl%C=?eQUYVSkmU(!kLY_J} zJW~}45{n_~T^Jb*eNq*YAts?JEiM78E6qbO&PsuipN+wdi@}}2gPp+>6zg7$3@RXp zLUKuFURi#2sy-yGK@x&nA~=p18D>Dk9h@4W3L#$dNX$#gNiA0K$QGe|M;FlaLHF&HrLGuSf-FgP#>Gq^K|FoZFPGK4co zFvKuOG9)obF<3KzvJ^A_9|i+<22n8vW(FGu1_mYuTLwD@1_luZW(HRVMh1H@=?EsB R8N9)I7#VyR{1^flBmt4JaR2}S literal 0 HcmV?d00001 diff --git a/DEV3.2/arbre/repertoire/Repertoires.java b/DEV3.2/arbre/repertoire/Repertoires.java new file mode 100644 index 0000000..c539a37 --- /dev/null +++ b/DEV3.2/arbre/repertoire/Repertoires.java @@ -0,0 +1,27 @@ +import java.io.File; + +public class Repertoires { + + public static void main(String[] args) { + if (args.length != 1) { + System.out.println("Usage: java Repertoires "); + return; + } + + File racine = new File(args[0]); + System.out.println("Chemin fourni : " + racine.getAbsolutePath()); // Débogage + + if (!racine.exists()) { + System.out.println("Le répertoire spécifié n'existe pas : " + racine.getAbsolutePath()); + return; + } + + if (!racine.isDirectory()) { + System.out.println("Le chemin spécifié n'est pas un répertoire : " + racine.getAbsolutePath()); + return; + } + + Noeud arbre = Noeud.construireArbre(racine); + arbre.afficher(""); + } +} diff --git a/DEV3.2/arbre/repertoire/toto/fichier4 b/DEV3.2/arbre/repertoire/toto/fichier4 new file mode 100644 index 0000000..e69de29 diff --git a/DEV3.2/arbre/repertoire/toto/sous1/fichier1 b/DEV3.2/arbre/repertoire/toto/sous1/fichier1 new file mode 100644 index 0000000..e69de29 diff --git a/DEV3.2/arbre/repertoire/toto/sous1/fichier2 b/DEV3.2/arbre/repertoire/toto/sous1/fichier2 new file mode 100644 index 0000000..e69de29 diff --git a/DEV3.2/arbre/repertoire/toto/sous2/fichier3 b/DEV3.2/arbre/repertoire/toto/sous2/fichier3 new file mode 100644 index 0000000..e69de29 diff --git a/DEV3.2/dictionnaire/Traces.class b/DEV3.2/dictionnaire/Traces.class new file mode 100644 index 0000000000000000000000000000000000000000..d889f116ba2553bccadce64c70654399969f144c GIT binary patch literal 1671 zcmX^0Z`VEs1_mdFbS?%a24;2!79Ivx1~x_pfvm)`ME#t^ymWp4q^#8B5=I6#o6Nk- z5<5l)W)00SE(Q(;PId+^9tLg(9u(yv8AYjyDU1w)>8T}-IXS^4iOJa^MTyC&#f%Js z8k#;}gG);?bM$=^3#_>r_!#)v83cG31Q~=F8F*1-85uZI^Gb>;gHub;^#-SwSaUOo zFo?1c@ zgpq+gBeB>owW0*!YmOQYq2+VAxz_Mm%P+?>cMwsWDSfJtx@(MSD zGJ_fqgF46nw)E5z@6<|=kR}g<7D$LAJ+&k(F{d<@ok53@K`t5+T40kA0qL5Pnwy$e zV$I2*$Dq&7V8Fv*$Y6vL2f>xaC8@cL49xkZC5#NB5K}Vq^#h7B^GbqCic%AEtwAwp z!oy(7V8+P6o}OCbmzbN%$bjmb;F6-uymV_J1_lNT9tKMWD@F$K+{Elu=ls0n#FFsL zk__kkyyB9?ypm!@1~mu3=Faij0}tn3=FJV+Zh-)GB7YOGWaquFtC9InHe}4 z{22TpN*S3Lm>9Si7#Ny&FtGb*?_}U*WZ20d%*f!Yvy(xRkzpo7j?PX7c}9i<49b4G zI~i0#EDkFc-JJ{?Af~nz>m~+WNtSI4#=98I85p)PSWB{6u}QM+Gh=5q;}GQ#WnaXg zAju}mVPwS#Qpvf4!EqOZJ6L542jlYp_ct-M?MGoy)?&$)L=@ z#Q@@4GVn2YG6*sxGYByhGYB$NGKezNGl(%XF^Dq+FfcG!GO+w*5MXEEV`q^1&)@s7=b_Qj31`c)xZFUB2Mn(pP9}LR>88{f2*cm_y7#J9s8G;!Y7?>DB7(y8s82A{N l7@`;$8N$G11VaJ?1A`C)6N54XA44J=CqoiL3PT!$Bmn)CoqGTP literal 0 HcmV?d00001 diff --git a/DEV3.2/dictionnaire/Traces.java b/DEV3.2/dictionnaire/Traces.java new file mode 100644 index 0000000..6f901df --- /dev/null +++ b/DEV3.2/dictionnaire/Traces.java @@ -0,0 +1,24 @@ +import java.util.Map; + +public class Traces { + public static void main(String[] args) { + // Récupération de toutes les piles d'appels des threads + Map allStackTraces = Thread.getAllStackTraces(); + + // Parcours des threads et affichage des informations + for (Map.Entry entry : allStackTraces.entrySet()) { + Thread thread = entry.getKey(); + StackTraceElement[] stackTrace = entry.getValue(); + + // Affichage du nom du thread + System.out.println(thread.getName() + " :"); + + // Affichage de chaque élément de la pile d'appels + for (StackTraceElement element : stackTrace) { + System.out.println(" " + element); + } + + System.out.println(); // Ligne vide pour séparer les threads + } + } +} diff --git a/DEV3.2/dictionnaire/couleurs/CouleursApp.class b/DEV3.2/dictionnaire/couleurs/CouleursApp.class new file mode 100644 index 0000000000000000000000000000000000000000..c4c673812fd283e497a4237492360749c2f861c6 GIT binary patch literal 4076 zcmX^0Z`VEs1_mdF+guDx49x5dEIbUX3~Y=H0$GV=iTXK-dFlH8Nm;4MC5#MgHko;u zC3cJq%o>_u>7975c^HnR)5@UT#H+xv3lsT#O7t&Kdcc6$&Y-#R|#!r8%jk zMa5hU>plY>)6dM;cPdRwOD#%G2}(^& zNiAY$u!03pX1=~#W=<+ZoP)uJk%7G^JxQ;mqJ)dVl7WYd!JNS!6l4wvhi2yMLzIKV z+nm9PhryY_g^_`yC^a#~Co?aVkwHX56A}dAGzv{cTnugu?(7U6JPe*7;R zAruytU|pVhC8_DDMT`s_1&Kw)sh)WyI1;@l7lQ^vILPx6j0|iVo}l#0%@D;9&CU?R z!w}05$H>474qtE-`6d=HGB6jEmM}6{AUhJ0L9LNo2o*sNA*c{2;u3fm5*d;h8MqQt zQe1OVb5k+g2UQG8B`J&y@?a-`edbr1o0MAQmS2>cSmIidoLT_Nl$;D{4C(9)89WS` z3|S~eM{s3vNop=519NIo5hH^r#D$sp`T<3mc_qOmMX8Co)>1q_Ak3`IN)#SFZR48mZS zqgu$wz+M2dJ|_>9@=AFa%0T5EYci;uVP~j-X##sUB%>(5JTWOJm5ZUAp^As0nxTe~ zfj2QFCAhSppeVJtI5mZlK?2!na2?j5z^h|qkcBw`ln4CsOWZ(N5*~CM3=ND7vTm8l z8JVd?3eaq!keOFflwVo~vRFZpouLWlrp$bOPk$u6EsP8bu0=(ur9}!UsR}u%$t9&l zsR}8HdBt#}6xkWtplK79m%Tu_n2Vv6p#zlgIvE+HARd6pgQUTk9PEW|Mg}>M7m#Ix zQ$coR=I4QxfsE?qVdw)D+@O*UMV6gm0waSsvH@Pf$wm1&IiNC`i=m%k637vg85xiZ zMCbh6g8aPHyb^28Fd+s;hN(OZ(-@{RGVqio=9H#7XC&sOg91Jg)!kr!L305tzd*P! zw|jvs&4H#Hm|$vIYF>#x$kT9#gE*;qsYTWxug&CPn8h%gkwGFcB?Tmbp^A|~2h}0? zOwz*U@D5|&wl`M zT#}fa?VDHtR?p6`n~^~ni&91g-kikTq?AMzka;Qwj12LRpo66gqLULidSJS+#Jwvh zfmwr`#uc1jT9lj$DhU`F1dzO|2g)Ff3<6I1`6b0AMTrHzsU;ctDa9NNhZq@@5LrA8 zT<}72cut~1PG)*us)CgQqX5GZc;X?#CH!m*$G8|aGaTn(*u$`wpN-)p7sDxr)9egq zK;`gRMg|p-dm!zz%)GMv>{NY7`3fnT-4c^a@{1}N8D>C23`HTtJTwvE9t(u(~UL$)OQHU?KAFZOK=K2{u(9Q)W8FoZ~QFdOY) z2r%Q6df zzl|Y(qZOFh3}WtPXpNL)-OkVsay0WchMwIF{gIMv+ZiT;43cD%WYOKlFa>1E3>`^! zp*hVenuO zX9#4FV2EOnWXNHVW+-QnWoTiLW9Vj3V3@+7$S{{diD4OoGQ%1M6^6qMstl(XG#Jh@ zs4<*pP-nQqpv7>XL7U+@gCxUW217;$25m+r1|3E&23O24}_q1~ zF?NP1b_Nr626G06{|pHXoLJ@98Qj colorMap = new HashMap<>(); + DefaultListModel listModel = new DefaultListModel<>(); + try (BufferedReader br = new BufferedReader(new FileReader("rgb.txt"))) { + String line; + while ((line = br.readLine()) != null) { + // Chaque ligne est sous la forme : R G B Nom + String[] parts = line.trim().split("\\s+", 4); + if (parts.length == 4) { + try { + int r = Integer.parseInt(parts[0]); + int g = Integer.parseInt(parts[1]); + int b = Integer.parseInt(parts[2]); + String name = parts[3]; + colorMap.put(name, new Color(r, g, b)); + listModel.addElement(name); + } catch (NumberFormatException e) { + System.err.println("Erreur de format dans la ligne : " + line); + } + } + } + } catch (FileNotFoundException e) { + System.err.println("Fichier rgb.txt introuvable !"); + return; + } catch (IOException e) { + System.err.println("Erreur de lecture dans rgb.txt !"); + return; + } + + // Liste JList pour les noms de couleurs + JList colorList = new JList<>(listModel); + colorList.setSelectionMode(ListSelectionModel.SINGLE_SELECTION); + JScrollPane scrollPane = new JScrollPane(colorList); + + // Ajouter un écouteur pour gérer les sélections dans la liste + colorList.addListSelectionListener(e -> { + String selectedColorName = colorList.getSelectedValue(); + if (selectedColorName != null) { + Color selectedColor = colorMap.get(selectedColorName); + colorPanel.setBackground(selectedColor); + } + }); + + // Ajouter les composants au panneau principal + panel.add(scrollPane, BorderLayout.WEST); + panel.add(colorPanel, BorderLayout.CENTER); + + // Ajouter le panneau à la fenêtre + frame.add(panel); + + // Rendre la fenêtre visible + frame.setVisible(true); + } +} diff --git a/DEV3.2/dictionnaire/couleurs/rgb.txt b/DEV3.2/dictionnaire/couleurs/rgb.txt new file mode 100644 index 0000000..52f43fe --- /dev/null +++ b/DEV3.2/dictionnaire/couleurs/rgb.txt @@ -0,0 +1,752 @@ +255 250 250 snow +248 248 255 ghost white +248 248 255 GhostWhite +245 245 245 white smoke +245 245 245 WhiteSmoke +220 220 220 gainsboro +255 250 240 floral white +255 250 240 FloralWhite +253 245 230 old lace +253 245 230 OldLace +250 240 230 linen +250 235 215 antique white +250 235 215 AntiqueWhite +255 239 213 papaya whip +255 239 213 PapayaWhip +255 235 205 blanched almond +255 235 205 BlanchedAlmond +255 228 196 bisque +255 218 185 peach puff +255 218 185 PeachPuff +255 222 173 navajo white +255 222 173 NavajoWhite +255 228 181 moccasin +255 248 220 cornsilk +255 255 240 ivory +255 250 205 lemon chiffon +255 250 205 LemonChiffon +255 245 238 seashell +240 255 240 honeydew +245 255 250 mint cream +245 255 250 MintCream +240 255 255 azure +240 248 255 alice blue +240 248 255 AliceBlue +230 230 250 lavender +255 240 245 lavender blush +255 240 245 LavenderBlush +255 228 225 misty rose +255 228 225 MistyRose +255 255 255 white + 0 0 0 black + 47 79 79 dark slate gray + 47 79 79 DarkSlateGray + 47 79 79 dark slate grey + 47 79 79 DarkSlateGrey +105 105 105 dim gray +105 105 105 DimGray +105 105 105 dim grey +105 105 105 DimGrey +112 128 144 slate gray +112 128 144 SlateGray +112 128 144 slate grey +112 128 144 SlateGrey +119 136 153 light slate gray +119 136 153 LightSlateGray +119 136 153 light slate grey +119 136 153 LightSlateGrey +190 190 190 gray +190 190 190 grey +211 211 211 light grey +211 211 211 LightGrey +211 211 211 light gray +211 211 211 LightGray + 25 25 112 midnight blue + 25 25 112 MidnightBlue + 0 0 128 navy + 0 0 128 navy blue + 0 0 128 NavyBlue +100 149 237 cornflower blue +100 149 237 CornflowerBlue + 72 61 139 dark slate blue + 72 61 139 DarkSlateBlue +106 90 205 slate blue +106 90 205 SlateBlue +123 104 238 medium slate blue +123 104 238 MediumSlateBlue +132 112 255 light slate blue +132 112 255 LightSlateBlue + 0 0 205 medium blue + 0 0 205 MediumBlue + 65 105 225 royal blue + 65 105 225 RoyalBlue + 0 0 255 blue + 30 144 255 dodger blue + 30 144 255 DodgerBlue + 0 191 255 deep sky blue + 0 191 255 DeepSkyBlue +135 206 235 sky blue +135 206 235 SkyBlue +135 206 250 light sky blue +135 206 250 LightSkyBlue + 70 130 180 steel blue + 70 130 180 SteelBlue +176 196 222 light steel blue +176 196 222 LightSteelBlue +173 216 230 light blue +173 216 230 LightBlue +176 224 230 powder blue +176 224 230 PowderBlue +175 238 238 pale turquoise +175 238 238 PaleTurquoise + 0 206 209 dark turquoise + 0 206 209 DarkTurquoise + 72 209 204 medium turquoise + 72 209 204 MediumTurquoise + 64 224 208 turquoise + 0 255 255 cyan +224 255 255 light cyan +224 255 255 LightCyan + 95 158 160 cadet blue + 95 158 160 CadetBlue +102 205 170 medium aquamarine +102 205 170 MediumAquamarine +127 255 212 aquamarine + 0 100 0 dark green + 0 100 0 DarkGreen + 85 107 47 dark olive green + 85 107 47 DarkOliveGreen +143 188 143 dark sea green +143 188 143 DarkSeaGreen + 46 139 87 sea green + 46 139 87 SeaGreen + 60 179 113 medium sea green + 60 179 113 MediumSeaGreen + 32 178 170 light sea green + 32 178 170 LightSeaGreen +152 251 152 pale green +152 251 152 PaleGreen + 0 255 127 spring green + 0 255 127 SpringGreen +124 252 0 lawn green +124 252 0 LawnGreen + 0 255 0 green +127 255 0 chartreuse + 0 250 154 medium spring green + 0 250 154 MediumSpringGreen +173 255 47 green yellow +173 255 47 GreenYellow + 50 205 50 lime green + 50 205 50 LimeGreen +154 205 50 yellow green +154 205 50 YellowGreen + 34 139 34 forest green + 34 139 34 ForestGreen +107 142 35 olive drab +107 142 35 OliveDrab +189 183 107 dark khaki +189 183 107 DarkKhaki +240 230 140 khaki +238 232 170 pale goldenrod +238 232 170 PaleGoldenrod +250 250 210 light goldenrod yellow +250 250 210 LightGoldenrodYellow +255 255 224 light yellow +255 255 224 LightYellow +255 255 0 yellow +255 215 0 gold +238 221 130 light goldenrod +238 221 130 LightGoldenrod +218 165 32 goldenrod +184 134 11 dark goldenrod +184 134 11 DarkGoldenrod +188 143 143 rosy brown +188 143 143 RosyBrown +205 92 92 indian red +205 92 92 IndianRed +139 69 19 saddle brown +139 69 19 SaddleBrown +160 82 45 sienna +205 133 63 peru +222 184 135 burlywood +245 245 220 beige +245 222 179 wheat +244 164 96 sandy brown +244 164 96 SandyBrown +210 180 140 tan +210 105 30 chocolate +178 34 34 firebrick +165 42 42 brown +233 150 122 dark salmon +233 150 122 DarkSalmon +250 128 114 salmon +255 160 122 light salmon +255 160 122 LightSalmon +255 165 0 orange +255 140 0 dark orange +255 140 0 DarkOrange +255 127 80 coral +240 128 128 light coral +240 128 128 LightCoral +255 99 71 tomato +255 69 0 orange red +255 69 0 OrangeRed +255 0 0 red +255 105 180 hot pink +255 105 180 HotPink +255 20 147 deep pink +255 20 147 DeepPink +255 192 203 pink +255 182 193 light pink +255 182 193 LightPink +219 112 147 pale violet red +219 112 147 PaleVioletRed +176 48 96 maroon +199 21 133 medium violet red +199 21 133 MediumVioletRed +208 32 144 violet red +208 32 144 VioletRed +255 0 255 magenta +238 130 238 violet +221 160 221 plum +218 112 214 orchid +186 85 211 medium orchid +186 85 211 MediumOrchid +153 50 204 dark orchid +153 50 204 DarkOrchid +148 0 211 dark violet +148 0 211 DarkViolet +138 43 226 blue violet +138 43 226 BlueViolet +160 32 240 purple +147 112 219 medium purple +147 112 219 MediumPurple +216 191 216 thistle +255 250 250 snow1 +238 233 233 snow2 +205 201 201 snow3 +139 137 137 snow4 +255 245 238 seashell1 +238 229 222 seashell2 +205 197 191 seashell3 +139 134 130 seashell4 +255 239 219 AntiqueWhite1 +238 223 204 AntiqueWhite2 +205 192 176 AntiqueWhite3 +139 131 120 AntiqueWhite4 +255 228 196 bisque1 +238 213 183 bisque2 +205 183 158 bisque3 +139 125 107 bisque4 +255 218 185 PeachPuff1 +238 203 173 PeachPuff2 +205 175 149 PeachPuff3 +139 119 101 PeachPuff4 +255 222 173 NavajoWhite1 +238 207 161 NavajoWhite2 +205 179 139 NavajoWhite3 +139 121 94 NavajoWhite4 +255 250 205 LemonChiffon1 +238 233 191 LemonChiffon2 +205 201 165 LemonChiffon3 +139 137 112 LemonChiffon4 +255 248 220 cornsilk1 +238 232 205 cornsilk2 +205 200 177 cornsilk3 +139 136 120 cornsilk4 +255 255 240 ivory1 +238 238 224 ivory2 +205 205 193 ivory3 +139 139 131 ivory4 +240 255 240 honeydew1 +224 238 224 honeydew2 +193 205 193 honeydew3 +131 139 131 honeydew4 +255 240 245 LavenderBlush1 +238 224 229 LavenderBlush2 +205 193 197 LavenderBlush3 +139 131 134 LavenderBlush4 +255 228 225 MistyRose1 +238 213 210 MistyRose2 +205 183 181 MistyRose3 +139 125 123 MistyRose4 +240 255 255 azure1 +224 238 238 azure2 +193 205 205 azure3 +131 139 139 azure4 +131 111 255 SlateBlue1 +122 103 238 SlateBlue2 +105 89 205 SlateBlue3 + 71 60 139 SlateBlue4 + 72 118 255 RoyalBlue1 + 67 110 238 RoyalBlue2 + 58 95 205 RoyalBlue3 + 39 64 139 RoyalBlue4 + 0 0 255 blue1 + 0 0 238 blue2 + 0 0 205 blue3 + 0 0 139 blue4 + 30 144 255 DodgerBlue1 + 28 134 238 DodgerBlue2 + 24 116 205 DodgerBlue3 + 16 78 139 DodgerBlue4 + 99 184 255 SteelBlue1 + 92 172 238 SteelBlue2 + 79 148 205 SteelBlue3 + 54 100 139 SteelBlue4 + 0 191 255 DeepSkyBlue1 + 0 178 238 DeepSkyBlue2 + 0 154 205 DeepSkyBlue3 + 0 104 139 DeepSkyBlue4 +135 206 255 SkyBlue1 +126 192 238 SkyBlue2 +108 166 205 SkyBlue3 + 74 112 139 SkyBlue4 +176 226 255 LightSkyBlue1 +164 211 238 LightSkyBlue2 +141 182 205 LightSkyBlue3 + 96 123 139 LightSkyBlue4 +198 226 255 SlateGray1 +185 211 238 SlateGray2 +159 182 205 SlateGray3 +108 123 139 SlateGray4 +202 225 255 LightSteelBlue1 +188 210 238 LightSteelBlue2 +162 181 205 LightSteelBlue3 +110 123 139 LightSteelBlue4 +191 239 255 LightBlue1 +178 223 238 LightBlue2 +154 192 205 LightBlue3 +104 131 139 LightBlue4 +224 255 255 LightCyan1 +209 238 238 LightCyan2 +180 205 205 LightCyan3 +122 139 139 LightCyan4 +187 255 255 PaleTurquoise1 +174 238 238 PaleTurquoise2 +150 205 205 PaleTurquoise3 +102 139 139 PaleTurquoise4 +152 245 255 CadetBlue1 +142 229 238 CadetBlue2 +122 197 205 CadetBlue3 + 83 134 139 CadetBlue4 + 0 245 255 turquoise1 + 0 229 238 turquoise2 + 0 197 205 turquoise3 + 0 134 139 turquoise4 + 0 255 255 cyan1 + 0 238 238 cyan2 + 0 205 205 cyan3 + 0 139 139 cyan4 +151 255 255 DarkSlateGray1 +141 238 238 DarkSlateGray2 +121 205 205 DarkSlateGray3 + 82 139 139 DarkSlateGray4 +127 255 212 aquamarine1 +118 238 198 aquamarine2 +102 205 170 aquamarine3 + 69 139 116 aquamarine4 +193 255 193 DarkSeaGreen1 +180 238 180 DarkSeaGreen2 +155 205 155 DarkSeaGreen3 +105 139 105 DarkSeaGreen4 + 84 255 159 SeaGreen1 + 78 238 148 SeaGreen2 + 67 205 128 SeaGreen3 + 46 139 87 SeaGreen4 +154 255 154 PaleGreen1 +144 238 144 PaleGreen2 +124 205 124 PaleGreen3 + 84 139 84 PaleGreen4 + 0 255 127 SpringGreen1 + 0 238 118 SpringGreen2 + 0 205 102 SpringGreen3 + 0 139 69 SpringGreen4 + 0 255 0 green1 + 0 238 0 green2 + 0 205 0 green3 + 0 139 0 green4 +127 255 0 chartreuse1 +118 238 0 chartreuse2 +102 205 0 chartreuse3 + 69 139 0 chartreuse4 +192 255 62 OliveDrab1 +179 238 58 OliveDrab2 +154 205 50 OliveDrab3 +105 139 34 OliveDrab4 +202 255 112 DarkOliveGreen1 +188 238 104 DarkOliveGreen2 +162 205 90 DarkOliveGreen3 +110 139 61 DarkOliveGreen4 +255 246 143 khaki1 +238 230 133 khaki2 +205 198 115 khaki3 +139 134 78 khaki4 +255 236 139 LightGoldenrod1 +238 220 130 LightGoldenrod2 +205 190 112 LightGoldenrod3 +139 129 76 LightGoldenrod4 +255 255 224 LightYellow1 +238 238 209 LightYellow2 +205 205 180 LightYellow3 +139 139 122 LightYellow4 +255 255 0 yellow1 +238 238 0 yellow2 +205 205 0 yellow3 +139 139 0 yellow4 +255 215 0 gold1 +238 201 0 gold2 +205 173 0 gold3 +139 117 0 gold4 +255 193 37 goldenrod1 +238 180 34 goldenrod2 +205 155 29 goldenrod3 +139 105 20 goldenrod4 +255 185 15 DarkGoldenrod1 +238 173 14 DarkGoldenrod2 +205 149 12 DarkGoldenrod3 +139 101 8 DarkGoldenrod4 +255 193 193 RosyBrown1 +238 180 180 RosyBrown2 +205 155 155 RosyBrown3 +139 105 105 RosyBrown4 +255 106 106 IndianRed1 +238 99 99 IndianRed2 +205 85 85 IndianRed3 +139 58 58 IndianRed4 +255 130 71 sienna1 +238 121 66 sienna2 +205 104 57 sienna3 +139 71 38 sienna4 +255 211 155 burlywood1 +238 197 145 burlywood2 +205 170 125 burlywood3 +139 115 85 burlywood4 +255 231 186 wheat1 +238 216 174 wheat2 +205 186 150 wheat3 +139 126 102 wheat4 +255 165 79 tan1 +238 154 73 tan2 +205 133 63 tan3 +139 90 43 tan4 +255 127 36 chocolate1 +238 118 33 chocolate2 +205 102 29 chocolate3 +139 69 19 chocolate4 +255 48 48 firebrick1 +238 44 44 firebrick2 +205 38 38 firebrick3 +139 26 26 firebrick4 +255 64 64 brown1 +238 59 59 brown2 +205 51 51 brown3 +139 35 35 brown4 +255 140 105 salmon1 +238 130 98 salmon2 +205 112 84 salmon3 +139 76 57 salmon4 +255 160 122 LightSalmon1 +238 149 114 LightSalmon2 +205 129 98 LightSalmon3 +139 87 66 LightSalmon4 +255 165 0 orange1 +238 154 0 orange2 +205 133 0 orange3 +139 90 0 orange4 +255 127 0 DarkOrange1 +238 118 0 DarkOrange2 +205 102 0 DarkOrange3 +139 69 0 DarkOrange4 +255 114 86 coral1 +238 106 80 coral2 +205 91 69 coral3 +139 62 47 coral4 +255 99 71 tomato1 +238 92 66 tomato2 +205 79 57 tomato3 +139 54 38 tomato4 +255 69 0 OrangeRed1 +238 64 0 OrangeRed2 +205 55 0 OrangeRed3 +139 37 0 OrangeRed4 +255 0 0 red1 +238 0 0 red2 +205 0 0 red3 +139 0 0 red4 +255 20 147 DeepPink1 +238 18 137 DeepPink2 +205 16 118 DeepPink3 +139 10 80 DeepPink4 +255 110 180 HotPink1 +238 106 167 HotPink2 +205 96 144 HotPink3 +139 58 98 HotPink4 +255 181 197 pink1 +238 169 184 pink2 +205 145 158 pink3 +139 99 108 pink4 +255 174 185 LightPink1 +238 162 173 LightPink2 +205 140 149 LightPink3 +139 95 101 LightPink4 +255 130 171 PaleVioletRed1 +238 121 159 PaleVioletRed2 +205 104 137 PaleVioletRed3 +139 71 93 PaleVioletRed4 +255 52 179 maroon1 +238 48 167 maroon2 +205 41 144 maroon3 +139 28 98 maroon4 +255 62 150 VioletRed1 +238 58 140 VioletRed2 +205 50 120 VioletRed3 +139 34 82 VioletRed4 +255 0 255 magenta1 +238 0 238 magenta2 +205 0 205 magenta3 +139 0 139 magenta4 +255 131 250 orchid1 +238 122 233 orchid2 +205 105 201 orchid3 +139 71 137 orchid4 +255 187 255 plum1 +238 174 238 plum2 +205 150 205 plum3 +139 102 139 plum4 +224 102 255 MediumOrchid1 +209 95 238 MediumOrchid2 +180 82 205 MediumOrchid3 +122 55 139 MediumOrchid4 +191 62 255 DarkOrchid1 +178 58 238 DarkOrchid2 +154 50 205 DarkOrchid3 +104 34 139 DarkOrchid4 +155 48 255 purple1 +145 44 238 purple2 +125 38 205 purple3 + 85 26 139 purple4 +171 130 255 MediumPurple1 +159 121 238 MediumPurple2 +137 104 205 MediumPurple3 + 93 71 139 MediumPurple4 +255 225 255 thistle1 +238 210 238 thistle2 +205 181 205 thistle3 +139 123 139 thistle4 + 0 0 0 gray0 + 0 0 0 grey0 + 3 3 3 gray1 + 3 3 3 grey1 + 5 5 5 gray2 + 5 5 5 grey2 + 8 8 8 gray3 + 8 8 8 grey3 + 10 10 10 gray4 + 10 10 10 grey4 + 13 13 13 gray5 + 13 13 13 grey5 + 15 15 15 gray6 + 15 15 15 grey6 + 18 18 18 gray7 + 18 18 18 grey7 + 20 20 20 gray8 + 20 20 20 grey8 + 23 23 23 gray9 + 23 23 23 grey9 + 26 26 26 gray10 + 26 26 26 grey10 + 28 28 28 gray11 + 28 28 28 grey11 + 31 31 31 gray12 + 31 31 31 grey12 + 33 33 33 gray13 + 33 33 33 grey13 + 36 36 36 gray14 + 36 36 36 grey14 + 38 38 38 gray15 + 38 38 38 grey15 + 41 41 41 gray16 + 41 41 41 grey16 + 43 43 43 gray17 + 43 43 43 grey17 + 46 46 46 gray18 + 46 46 46 grey18 + 48 48 48 gray19 + 48 48 48 grey19 + 51 51 51 gray20 + 51 51 51 grey20 + 54 54 54 gray21 + 54 54 54 grey21 + 56 56 56 gray22 + 56 56 56 grey22 + 59 59 59 gray23 + 59 59 59 grey23 + 61 61 61 gray24 + 61 61 61 grey24 + 64 64 64 gray25 + 64 64 64 grey25 + 66 66 66 gray26 + 66 66 66 grey26 + 69 69 69 gray27 + 69 69 69 grey27 + 71 71 71 gray28 + 71 71 71 grey28 + 74 74 74 gray29 + 74 74 74 grey29 + 77 77 77 gray30 + 77 77 77 grey30 + 79 79 79 gray31 + 79 79 79 grey31 + 82 82 82 gray32 + 82 82 82 grey32 + 84 84 84 gray33 + 84 84 84 grey33 + 87 87 87 gray34 + 87 87 87 grey34 + 89 89 89 gray35 + 89 89 89 grey35 + 92 92 92 gray36 + 92 92 92 grey36 + 94 94 94 gray37 + 94 94 94 grey37 + 97 97 97 gray38 + 97 97 97 grey38 + 99 99 99 gray39 + 99 99 99 grey39 +102 102 102 gray40 +102 102 102 grey40 +105 105 105 gray41 +105 105 105 grey41 +107 107 107 gray42 +107 107 107 grey42 +110 110 110 gray43 +110 110 110 grey43 +112 112 112 gray44 +112 112 112 grey44 +115 115 115 gray45 +115 115 115 grey45 +117 117 117 gray46 +117 117 117 grey46 +120 120 120 gray47 +120 120 120 grey47 +122 122 122 gray48 +122 122 122 grey48 +125 125 125 gray49 +125 125 125 grey49 +127 127 127 gray50 +127 127 127 grey50 +130 130 130 gray51 +130 130 130 grey51 +133 133 133 gray52 +133 133 133 grey52 +135 135 135 gray53 +135 135 135 grey53 +138 138 138 gray54 +138 138 138 grey54 +140 140 140 gray55 +140 140 140 grey55 +143 143 143 gray56 +143 143 143 grey56 +145 145 145 gray57 +145 145 145 grey57 +148 148 148 gray58 +148 148 148 grey58 +150 150 150 gray59 +150 150 150 grey59 +153 153 153 gray60 +153 153 153 grey60 +156 156 156 gray61 +156 156 156 grey61 +158 158 158 gray62 +158 158 158 grey62 +161 161 161 gray63 +161 161 161 grey63 +163 163 163 gray64 +163 163 163 grey64 +166 166 166 gray65 +166 166 166 grey65 +168 168 168 gray66 +168 168 168 grey66 +171 171 171 gray67 +171 171 171 grey67 +173 173 173 gray68 +173 173 173 grey68 +176 176 176 gray69 +176 176 176 grey69 +179 179 179 gray70 +179 179 179 grey70 +181 181 181 gray71 +181 181 181 grey71 +184 184 184 gray72 +184 184 184 grey72 +186 186 186 gray73 +186 186 186 grey73 +189 189 189 gray74 +189 189 189 grey74 +191 191 191 gray75 +191 191 191 grey75 +194 194 194 gray76 +194 194 194 grey76 +196 196 196 gray77 +196 196 196 grey77 +199 199 199 gray78 +199 199 199 grey78 +201 201 201 gray79 +201 201 201 grey79 +204 204 204 gray80 +204 204 204 grey80 +207 207 207 gray81 +207 207 207 grey81 +209 209 209 gray82 +209 209 209 grey82 +212 212 212 gray83 +212 212 212 grey83 +214 214 214 gray84 +214 214 214 grey84 +217 217 217 gray85 +217 217 217 grey85 +219 219 219 gray86 +219 219 219 grey86 +222 222 222 gray87 +222 222 222 grey87 +224 224 224 gray88 +224 224 224 grey88 +227 227 227 gray89 +227 227 227 grey89 +229 229 229 gray90 +229 229 229 grey90 +232 232 232 gray91 +232 232 232 grey91 +235 235 235 gray92 +235 235 235 grey92 +237 237 237 gray93 +237 237 237 grey93 +240 240 240 gray94 +240 240 240 grey94 +242 242 242 gray95 +242 242 242 grey95 +245 245 245 gray96 +245 245 245 grey96 +247 247 247 gray97 +247 247 247 grey97 +250 250 250 gray98 +250 250 250 grey98 +252 252 252 gray99 +252 252 252 grey99 +255 255 255 gray100 +255 255 255 grey100 +169 169 169 dark grey +169 169 169 DarkGrey +169 169 169 dark gray +169 169 169 DarkGray +0 0 139 dark blue +0 0 139 DarkBlue +0 139 139 dark cyan +0 139 139 DarkCyan +139 0 139 dark magenta +139 0 139 DarkMagenta +139 0 0 dark red +139 0 0 DarkRed +144 238 144 light green +144 238 144 LightGreen \ No newline at end of file