From 91d20e0ba627ff9b76312c26ece1e42b87437ba3 Mon Sep 17 00:00:00 2001 From: Simoes Lukas Date: Thu, 9 Oct 2025 12:11:25 +0200 Subject: [PATCH] tp recursivite --- DEV3.2/TP02/01_Appels/Factorielle.class | Bin 0 -> 1112 bytes DEV3.2/TP02/01_Appels/Factorielle.java | 17 +++++++ DEV3.2/TP02/01_Appels/Main.class | Bin 0 -> 968 bytes DEV3.2/TP02/01_Appels/Main.java | 5 ++ DEV3.2/TP02/02_Tableaux/Main.class | Bin 0 -> 1170 bytes DEV3.2/TP02/02_Tableaux/Main.java | 17 +++++++ DEV3.2/TP02/02_Tableaux/Tableaux.class | Bin 0 -> 1652 bytes DEV3.2/TP02/02_Tableaux/Tableaux.java | 61 +++++++++++++++++++++++ DEV3.2/TP02/03_Fibonacci/Fibonacci.class | Bin 0 -> 1295 bytes DEV3.2/TP02/03_Fibonacci/Fibonacci.java | 27 ++++++++++ DEV3.2/TP02/03_Fibonacci/Main.class | Bin 0 -> 500 bytes DEV3.2/TP02/03_Fibonacci/Main.java | 5 ++ DEV3.2/TP02/05_Flocon/Fenetre.java | 20 ++++++++ DEV3.2/TP02/05_Flocon/JFlocon.java | 23 +++++++++ DEV3.2/TP02/05_Flocon/Main.java | 6 +++ 15 files changed, 181 insertions(+) create mode 100644 DEV3.2/TP02/01_Appels/Factorielle.class create mode 100644 DEV3.2/TP02/01_Appels/Factorielle.java create mode 100644 DEV3.2/TP02/01_Appels/Main.class create mode 100644 DEV3.2/TP02/01_Appels/Main.java create mode 100644 DEV3.2/TP02/02_Tableaux/Main.class create mode 100644 DEV3.2/TP02/02_Tableaux/Main.java create mode 100644 DEV3.2/TP02/02_Tableaux/Tableaux.class create mode 100644 DEV3.2/TP02/02_Tableaux/Tableaux.java create mode 100644 DEV3.2/TP02/03_Fibonacci/Fibonacci.class create mode 100644 DEV3.2/TP02/03_Fibonacci/Fibonacci.java create mode 100644 DEV3.2/TP02/03_Fibonacci/Main.class create mode 100644 DEV3.2/TP02/03_Fibonacci/Main.java create mode 100644 DEV3.2/TP02/05_Flocon/Fenetre.java create mode 100644 DEV3.2/TP02/05_Flocon/JFlocon.java create mode 100644 DEV3.2/TP02/05_Flocon/Main.java diff --git a/DEV3.2/TP02/01_Appels/Factorielle.class b/DEV3.2/TP02/01_Appels/Factorielle.class new file mode 100644 index 0000000000000000000000000000000000000000..39f593aaa7517c98d1c26db3aab04cc3ff6eb71b GIT binary patch literal 1112 zcmX^0Z`VEs1_pBmYc2*Z1`$pMQ3f#%25~M12?j|a1_lOM5KE4Wfs;XAh=Gwok)1(_ zok5wAfz2i}FSEpsk%3u5GmMde#W_DEm63tpCo?bAuQWF)wJ0PpDJPYYfjccRxg@_R zGc^aqW7Y8V)bwOz;0-QGOwRUAEP$%w3eGPrN=|jl1St}5Luk>{RFcyyV1^@XV47=ls0llEl1{Vvs?enwUm0 zGO&X!%E@D75QUmnl$uwTUwL?CD%eOy1~E{$V`^n*Fb0K*IU|D#*au)2X6BXUXQ%2z z913vWm7N`-HZd?s?P6eMVA#gMCdIOVft6(q zPIXc&Dbg*Bj5`?EcQJ54bRdK>)-W(IFo9j6$H2|Nz`(-5&cMpR&%nYU%D~Q`$iTs% z#=yy-!NAR+&%ncA&cMxJ%fQDF%)rke$iToL$iVuCfr;@KgOJc421XFgz{~(D5SSQ* l8O#_M7`PZ18B7=~7)%)?8Kf8(82A{N7^E2(8Dzku0stpN4Tk^# literal 0 HcmV?d00001 diff --git a/DEV3.2/TP02/01_Appels/Factorielle.java b/DEV3.2/TP02/01_Appels/Factorielle.java new file mode 100644 index 0000000..3d16dee --- /dev/null +++ b/DEV3.2/TP02/01_Appels/Factorielle.java @@ -0,0 +1,17 @@ +public class Factorielle { + + public static int factorielle(int n, int indentation) { + for (int i = 0; i != indentation; i++) { + System.out.print(" "); + } + System.out.println("Valeur de n : " + n); + if (n == 1) { + return 1; + } + for (int i = 0; i != indentation; i++) { + System.out.print(" "); + } + System.out.println("Valeur renvoyée : " + n + factorielle(n - 1, indentation++)); + return n * factorielle(n - 1, indentation++); + } +} \ No newline at end of file diff --git a/DEV3.2/TP02/01_Appels/Main.class b/DEV3.2/TP02/01_Appels/Main.class new file mode 100644 index 0000000000000000000000000000000000000000..41fc1664038fae972e8748712a72ff7a830ca382 GIT binary patch literal 968 zcmX^0Z`VEs1_pBmD=r2O20=~+AqHVC1`!5PE(S3MaUli<25Bw^83tK)203;Hc}4~{ zo6Nk-5<5l)W)00SMg|t={FGEi27aH+yi~u^+@#c^ki?{%R7M7t+{Da0Mg}pBXrHXa zvPAuy#JqI<;F6-uymV`jMy}xe(xT*4w@i>?PT$1LJUx&)9tKVZE_Mb59tK4QC3Xg7 z9tIT#Rdxn79tL#=4Mqk5r~Leq;*z4o0^ihfAq~?M#AhD=8)iV#IO#`A2#e1HN4BT#s$tC$knW;G-|8b`w^H?=J zJvBYK7z`K;85!6Z6%}k17#SJFa}%>uo%8dO6HCG~OER4E^NLFn^Gb?AVd&|piD?ZZ zgD}`_s7_{NU@ri9ASaKJK@^+g!q^#%K*43k$e;q&4|aNHURi#2Dl~#1u7LQUlAXbV zk%7%8KR>&)fRTa6GcPZ-$T=smxHz?#kzoe14Nx;6G2@Y#my(lOtOC(!jp=+O5fqIf zl?AC-lp`l2NMu?ghY8dO=fs?x;LMU#Yjy@pMg~<3|6y|*BZC}%bqtCO>p_@GKH7+AofGMgBf zw3v-{Ffc<%<{b7FDduNmu;XB`=V5SQaO7cdVsPeRkYJGHVUS{w=3$UwkmX^JV~}KI;DA}j$RGf+ z5E20XNm;4MC5#Nr8lXTFL`Zn%m87Pp7BMn#6eJcEr+VgjxBN=9L7O6s0ESS~D^TgY7{TW@KP504d7J<6>}OaAjm*VN|G5 zU}O-_P0UVp&d*CuED6sn$#BlkD=taQD=7v!$5Rtx0dib2GO&Wp0m);^YKE~hxPgMo zi;+PE>{MuSfLP|1m|T)yRLRcZ!^ptqlb@emTENJ_*zzUW% zkYQQCAfmN}fr(k0*=Pp?vpAz`(%3!~il~jDeMb zfq{#Gm4TZn~$Sx@cX(YQqfubV~^2NRd46Mv+KrCrJ)`D3Kd@NcmjEvIT7`PJFFe8{~-jZeD zWRPRvW>8=dV^CyJWKf3L#VyLf2+G<}yQ&yi!2Ys_*ah;M7{o4_B@A2;)*2b8^)gEs z1hu4D5+K6c7`WGfcrqXc+o7(Brd&dA`-;LYH{AjzP`z`(%4z{sG@z{sEj0M& maxActuel) { + return this.tableau[increment]; + } + return maxActuel; + } + if (this.tableau[increment] > maxActuel) { + return this.maximum(increment+1, this.tableau[increment]); + } + return this.maximum(increment+1, maxActuel); + + } + + public void afficheTabInverse(int[] tab, int decrement) { + if (decrement == 0) { + System.out.println(tab[0]); + } else { + System.out.print(tab[decrement] + " | "); + afficheTabInverse(tab, --decrement); + } + } +} \ No newline at end of file diff --git a/DEV3.2/TP02/03_Fibonacci/Fibonacci.class b/DEV3.2/TP02/03_Fibonacci/Fibonacci.class new file mode 100644 index 0000000000000000000000000000000000000000..d04cc38536f46f4ab9cc7a07cda76a860b196ac6 GIT binary patch literal 1295 zcmX^0Z`VEs1_pBmdoBhZ1~EHUDV8+P6kMKpFf|UXzBZGKuVs@%? zeqM57NqA;ShI4*iaY2 zLd2SpK?UpsunRNu%JQ>Q^&t+0xWg?mxg@`+lAXbpk%7%8KR>&)fRTa6GcPZ-$T=sm zxHz?#kzoe1FQH~YBF`f+FC{0nSOucd8q*m_A}AU|DhpDvD33-`4~a5sHZd?s?P6eMVA#gMCN+ye36~-v_H7Jo%xk1r7T{6Cv5kR^WeqMPq*zm07#XE^ zFmOt-z*xH&xFA+zkxN*^z`(!+_E#8#C<6ln3j;d?D+50R3xg;FJA)zv2ZJgDCxZ?H z7lR1{CxaCO4}%i}FM|sMAA=_YKSKb607C==KSLaY5JMV+Fhd4|C__Gj7(+ROC_^oS z1j8H#Nd{pC1_lKNu0IS+jK3I!{xArFD9%3&Y*3mJL^Cimh=5%p%3#I7z`(`8$Y8-> X!(hoE$sohPz`)1A1da|lFsT9nfa*1s literal 0 HcmV?d00001 diff --git a/DEV3.2/TP02/03_Fibonacci/Fibonacci.java b/DEV3.2/TP02/03_Fibonacci/Fibonacci.java new file mode 100644 index 0000000..68dd0df --- /dev/null +++ b/DEV3.2/TP02/03_Fibonacci/Fibonacci.java @@ -0,0 +1,27 @@ +public class Fibonacci { + + public static int fibonacci(int n, int indentation) { + for (int i = 0; i != indentation; i++) { + System.out.print(" "); + } + System.out.println("Valeur de n : " + n); + if (n == 0) { + for (int i = 0; i != indentation; i++) { + System.out.print(" "); + } + System.out.println("Valeur de retour : " + 0); + return 0; + } if (n == 1) { + for (int i = 0; i != indentation; i++) { + System.out.print(" "); + } + System.out.println("Valeur de retour : " + 1); + return 1; + } + for (int i = 0; i != indentation; i++) { + System.out.print(" "); + } + System.out.println("Valeur de retour : " + fibonacci(n-2, ++indentation) + fibonacci(n-1, ++indentation)); + return fibonacci(n-2, ++indentation) + fibonacci(n-1, ++indentation); + } +} \ No newline at end of file diff --git a/DEV3.2/TP02/03_Fibonacci/Main.class b/DEV3.2/TP02/03_Fibonacci/Main.class new file mode 100644 index 0000000000000000000000000000000000000000..7dfbcbd2c54e597b6b01fb57a7807398e8dae1c0 GIT binary patch literal 500 zcmX^0Z`VEs1_pBmbuI>W1_4e6K?Wf%24MyfE(TEsF)jvi1_^csNp=P)Mg}&U%)HDJ zJ4Oa(4b3n{1{UZ1lvG9rexJ;|RKL>Pq|~C2#H5^5Mh2GL#LPTK1~H9jpRB~PME#t^ zymbBGlA_GKbZd}CuHgLAqU2P!Opszu-^9#3J&-yc1`Y;Jb_Qu41{nrfb_O{f26+Yr zb_PWr1|$t5U4!Ii}&skw{{%=x7yj0~a> zcVy=42NY%Il?0a*r6%TDGcpJw%<#-BNli~JVr1YbNGvK&^~?il(}3thala=c1E*VN zQhr`ya&jgk17{k7&8p$)sp-kcAPhDZ)iy>3_5zUIIeCl>EE=AgVGN24Yz*uSAi%`H z2=Y1uBLf!$1A{CBBLgD?0|Tqpb_T|c3=9m64BQM13~XRQMg~p>9tK{hQe6gSu&CfB r1|}_Lqa6&)%sUuZwlT0Gv~e*oF)%PNGYBxSFfcOkF)%PNG4KNbDotdQ literal 0 HcmV?d00001 diff --git a/DEV3.2/TP02/03_Fibonacci/Main.java b/DEV3.2/TP02/03_Fibonacci/Main.java new file mode 100644 index 0000000..4f7f61b --- /dev/null +++ b/DEV3.2/TP02/03_Fibonacci/Main.java @@ -0,0 +1,5 @@ +public class Main { + public static void main(String[] args) { + System.out.println(Fibonacci.fibonacci(Integer.parseInt(args[0]), 0)); + } +} \ No newline at end of file diff --git a/DEV3.2/TP02/05_Flocon/Fenetre.java b/DEV3.2/TP02/05_Flocon/Fenetre.java new file mode 100644 index 0000000..3848440 --- /dev/null +++ b/DEV3.2/TP02/05_Flocon/Fenetre.java @@ -0,0 +1,20 @@ +import java.awt.*; +import javax.swing.*; + +public class Fenetre extends JFrame { + + private int ordre; + + public Fenetre(int ordre) { + this.ordre = ordre; + + this.setSize(500, 500); + this.setLocation(100, 100); + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + + this.setLayout(new GridLayout(1, 1)); + this.add(new JFlocon(ordre)); + } + + +} \ No newline at end of file diff --git a/DEV3.2/TP02/05_Flocon/JFlocon.java b/DEV3.2/TP02/05_Flocon/JFlocon.java new file mode 100644 index 0000000..a4f6e3d --- /dev/null +++ b/DEV3.2/TP02/05_Flocon/JFlocon.java @@ -0,0 +1,23 @@ +import java.awt.*; +import javax.swing.*; + +public class JFlocon extends JComponent { + + private int ordre; + + public JFlocon(int ordre) { + this.ordre = ordre; + } + + @Override + public void paintComponent(Graphics pinceau) { + Graphics secondPinceau = pinceau.create(); + + if (this.isOpaque()) { + this.setColor(this.getBackgroundColor()); + this.fillRect(0, 0, this.getWidth(), this.getHeight()); + } + + + } +} \ No newline at end of file diff --git a/DEV3.2/TP02/05_Flocon/Main.java b/DEV3.2/TP02/05_Flocon/Main.java new file mode 100644 index 0000000..64b82fa --- /dev/null +++ b/DEV3.2/TP02/05_Flocon/Main.java @@ -0,0 +1,6 @@ +public class Main { + public static void main(String[] args) { + Fenetre fenetre = new Fenetre(Integer.parseInt(args[0])); + fenetre.setVisible(true); + } +} \ No newline at end of file