diff --git a/TP1/Makefile b/TP1/Makefile
index 83914bdb6b67a0fdf6264c3941a99ac49a3508e9..4ef68c03f7953ab2723c38e05c9466be1a6040f7 100644
--- a/TP1/Makefile
+++ b/TP1/Makefile
@@ -1,10 +1,12 @@
 all: main
 	
-main : tris.o main.c
-	gcc -o main -Wall tris.o -g main.c
+main : tris.o utils.o main.c
+	gcc -o main -Wall utils.o tris.o -g main.c
 
 tris.o : tris.c tris.h
 	gcc -c -Wall -g tris.c
 
+utils.o : utils.c utils.h
+	gcc -o utils.o -c -g utils.c
 clean :
 	rm *.o
diff --git a/TP1/main b/TP1/main
index 29b5568cd857252272d0bce598697c9aa600305b..a35758e486c00f1310ae565c502ec448d9fbf00d 100755
Binary files a/TP1/main and b/TP1/main differ
diff --git a/TP1/main.c b/TP1/main.c
index bdf6489e4ed8491efb03bf647f07689615fc6d10..5cb7424f0864e60fcaf90b2533f6a05155005010 100644
--- a/TP1/main.c
+++ b/TP1/main.c
@@ -1,14 +1,20 @@
 #include <stdio.h>
+#include <stdlib.h>
 #include "tris.h"
+#include "utils.h"
+
 
 int main() {
-  long A[5] = {3, 4, 1, 6, -1};
+  int T1[5] ={3,2,5,1,4} ;
+
+  int T2[8] ={3,2,8,4,1,6,7,5} ;
+
+  affichertab(T1,5);
+  printf("\n");
 
-  triFusion(A, 5);
+  triInsertion(T1,5);
 
-  for(int i = 0; i < 5; ++i) {
-    printf("%i\n", A[i]);
-  }
+  affichertab(T1,5);
 
   return 0;
 }
diff --git a/TP1/tris.c b/TP1/tris.c
index f4145b0228c611d78f8c529173dd8898bf23f809..a646758700f5674ae611685e8f08d55d9da2fc46 100644
--- a/TP1/tris.c
+++ b/TP1/tris.c
@@ -3,17 +3,17 @@
 #include <stdio.h>
 #include "tris.h"
 
-/*triInsertion(A,n){
-    for(size_t i = 1; i <= n-1; i++){
-        clef = A[i];
-        j = i - 1;
-        while(j >= 0 && A[j] > clé){
+void triInsertion(int* A, int n) {
+    for(int i = 1; i <= n-1; i++){
+        int cle = A[i];
+        int j = i - 1;
+        while(j >= 0 && A[j] > cle){
             A[j+1] = A[j];
             j--;
         }
-        A[j+1] = clef;
+        A[j+1] = cle;
     }
-}*/
+}
 
 void triFusion(long* A, size_t size) {
   sousTriFusion(A, 0, size);
diff --git a/TP1/tris.h b/TP1/tris.h
index 37cdfac7de13524426b9b4a476a31781551eccf7..e505fa96c79658cef2311379e7155fd2b5d9058b 100644
--- a/TP1/tris.h
+++ b/TP1/tris.h
@@ -1,6 +1,8 @@
 #ifndef TRIS_H
 #define TRIS_H
 
+void triInsertion(int* A, int n);
+
 void triFusion(long* A, size_t size);
 void sousTriFusion(long* A, size_t first, size_t size);
 void fusion(long* A, size_t first, size_t middle, size_t size);
diff --git a/TP1/tris.o b/TP1/tris.o
deleted file mode 100644
index 7eb7222252947ff90d20500bc3d5de7b159b52b8..0000000000000000000000000000000000000000
Binary files a/TP1/tris.o and /dev/null differ
diff --git a/TP1/utils.c b/TP1/utils.c
new file mode 100644
index 0000000000000000000000000000000000000000..f68b0b38139e3ba20612c79aa938299711317102
--- /dev/null
+++ b/TP1/utils.c
@@ -0,0 +1,9 @@
+#include <stdio.h>
+#include <stdlib.h>
+#include "utils.h" 
+
+void affichertab(int* T, int s){
+    for(int i = 0; i < s; i++){
+        printf("%d \n",T[i]);
+    } 
+} 
\ No newline at end of file
diff --git a/TP1/utils.h b/TP1/utils.h
new file mode 100644
index 0000000000000000000000000000000000000000..4313661243edd1c568cae444cec84ab117585509
--- /dev/null
+++ b/TP1/utils.h
@@ -0,0 +1,4 @@
+#include <stdio.h>
+#include <stdlib.h>
+
+void affichertab(int* T, int s);
\ No newline at end of file