From e10654620362732648f71b57f9eb724a30405eec Mon Sep 17 00:00:00 2001
From: "mathias.catala" <catalamathias@gmail.com>
Date: Sun, 19 Nov 2023 16:34:24 +0100
Subject: [PATCH] "update"

---
 myTP/exos/exo1   | Bin 15560 -> 15856 bytes
 myTP/exos/exo1.c | 102 ++++++++++++++++++++++++++++++++++++++++++-----
 2 files changed, 92 insertions(+), 10 deletions(-)

diff --git a/myTP/exos/exo1 b/myTP/exos/exo1
index 3c7a594c631cf340dc110f33cd270e0c3d91b688..4830ca799654e3d0f8a0a5a01f89e063612725c9 100755
GIT binary patch
delta 3131
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
MAv`h0$*WA|03NYE4gdfE

delta 1609
zcmexReWG%LgiwG00~k1fNd^WF(}`NkI47_{xDzG|G73+8Bg3_p2_mqTX|fQb9;XQ-
zgljU{lTn{D0V<g>xsma^qKpDW4xP4v2s7ABp2_rH#PMQOuk(GbneoB;wW^iBr9EbJ
z8&96Yykv3*%h}0Ata@?ACJYP=Obm<+%nXbSj0`Lc%nS@*Rxtwu1IW=JYf7auIT;vO
z7}}v`GcqtS)I#M!LJ)aouslf5mWk8YK&DQftjH#A=pYDE!@zLD7D97CD25Lpr3?%V
z63{?_iAzk*WOHU@nY@-woR<}<7DPRmypT<N@(VVV$u{gfn{C7jI421NOl}ZR^zznc
zVEB@z$1mRkQpe!YYdce)fx)AfbrOiO{81w6(aov{Vz(YB;r#!AU%mmP@GzA2=(WuR
zN%op1O@1vP!}xbHhoGF6sy+h)L#c77N3-oMJq88_kItthydK@QZ2Alg|3y#eF)+MH
z{{R2~G1fnm0|a#i_Jd4(afyL}VF!p6JGog%m%oe;r0+Ob<i*r~llKd0F;)JX{94G3
z|0ge!l*qry4#G)Fy~tvV|Nj5q?D~eWvG&aiW(J13#S=~*X4otx_Kb6L0ecPeBn8&V
z@(SWsjMB{377Ppwprpj|;s5^}1_lO`5C8v%FfcIae*FJ`3IhX!)5rh+w=gg;ocZ|w
z{}l!X2HsEq|9@eaJWoN1@y6tX3gWC2-v9q^F!`>6a^l1f|No1EJmAPD(8lD<%ND@H
z4vH8V1_p*21_p+<5C8vnA<Hwhf)#+|=P)oZeE9JHzaz4I4Op51B)^A&fkAL`qN4a_
zW~IH{lMC1{Yr@h7EG<A2JOe28flPt%YbU?dm1kNYG?_~;j&Z@{Og(wVd6PT!>=_Lv
zpVX5VN&xwufq{V?q=$ilVFBypUwU?o0h2BD<r(cJN9u3qgvu~TOg1#=XOx+I&>)<1
zIRgWO0)qsDz+^>3VOIeL2?hmdT7;>tVqjnpV&Z35AOsVE(4h1q#K6a(2^BAa2s3m{
zc4QGZoDI^&z{l_cn)1N`!oa|=6r5)y7zEI4*)&;@MZEqXD0rA8;Q0Y+B*Qt7I4CcI
zvLXX0A3|jAf=!cT&_FY7HPm)knWF|#&hQAT9^H@cAnM&1JfY47$3FuD!)J&DLmX5b
z9PbPa3_n2*V!{k8Rz?N}g~=P4gc;>0I~t2K8cZ%U7H9OH+-cm!6Q7!rSdz#PpO%@I
zIXTWmX7U6R_sLI9{5D&d-e6)nz%W_JLQil33&g1~dfwzf3w=R5XdwWj1tw3l&=(AV
zio)s17cKO;7C=Q8uukT(G!ulS3m9!MInc76(O~jLOMQ5e3=1Y-rpZE9dR(xWULZ8t
z%gT*WX7WTUeL;*ucJf6leZdH5guv)KlLgJ?Hyc<hFfwXP4z$tdgvGPK<W3uNPFT1r
wOg?F2&!{k&)7GBL!2s%GrpZCJW}FX<Al$&o6K%~o4MAly0|SHD<cYTO0B)QvI{*Lx

diff --git a/myTP/exos/exo1.c b/myTP/exos/exo1.c
index 5fd7225..34afff7 100644
--- a/myTP/exos/exo1.c
+++ b/myTP/exos/exo1.c
@@ -1,20 +1,42 @@
 #include <stdio.h>
 #include <stdlib.h>
 #include <math.h>
+#include <stdbool.h>
+#include <string.h>
+
 
 int Prime();
 int factoriel(int n);
 int perfect(int num);
+bool palindrome(int n ,char* mot);
+void swap(int* a,int *b);
+void bubbleSort(int n, int tab[]);
+void insertionSort(int n, int tab[]);
 
 int main(){
+     int i;
+    int arr[] = { 64, 34, 25, 12, 22, 11, 90 };
+    int n = sizeof(arr)/ sizeof(arr[0]);
+    
+    for (i = 0; i < n; i++)
+        printf("%d ", arr[i]);
 
+    //bubbleSort(n,arr);
+    insertionSort(n,arr);
+    printf("\nSorted array: \n");
+   
+    for (i = 0; i < n; i++)
+        printf("%d ", arr[i]);
+
+    
+    printf("N: %d",n);
 
     //printf("%u",Prime());
 
     //printf("%u ",factoriel(4));
-    perfect(0);
+    //perfect(0);
 
-    palindrome(0,"kayak");
+    //palindrome(0,"kayadfk");
     
 }
 
@@ -69,21 +91,81 @@ int perfect(int num){
 
     }    
 }
-
 bool palindrome(int n ,char* mot){
 
-    length=strlen(mot)-1
+    int len=strlen(mot)-(n+1);
 
-    if(mot[n]==mot[length]){
+    if(mot[n]==mot[len]){
 
-        if (index+1 ==len ||index==len){
+        if (n+1 ==len ||n==len){
 
-            printf("pal")
+            
+            return printf("pal");
         }
-        palindrome(index+1,mot);
+        palindrome(n+1,mot);
     }else{
-        printf("not pal")
+        printf("not pal");
+    }
+
+
+    }
+
+
+void swap(int* a,int *b){
+
+    int temp = *a;
+    *a = *b;
+    *b = temp;
+}
+
+void bubbleSort(int n, int tab[]){
+
+
+    int i,j;
+    bool swapped;
+
+    for (i=0;i<n-1;i++){
+
+        swapped = false;
+        for(j=0;j<n-1;j++){
+
+            if(tab[j]>tab[j+1]){
+
+               swap(&tab[j],&tab[j+1]);
+                swapped =true;
+            }
+        }
+
+        if(!swapped){
+
+            break;
+        }
+
+
+    }
+}
+
+void insertionSort(int n, int tab[]){
+    int i;
+    bool swapped;
+
+    for (i=0;i<n-1;i++){
+
+        int tmp = tab[i];
+        int pos = i;
+
+        while(i>0 && tab[pos-1]>tmp){
+
+            tab[pos] = tab[pos-1];
+            pos-=1;
+            
+        }
+        tab[pos]= tmp;
+        
     }
 
+   
+
+
 
-    }
\ No newline at end of file
+}
\ No newline at end of file
-- 
GitLab