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