#include #include #include #define N 10 #define N1 5 #define N2 10 bool rechercheElem (int tab[], int elem) { bool trouve = false; // TO DO return trouve; } void decaleTab (int tab[], int k) { // TO DO } void fusionNaive (int tab1[], int tab2[], int newTab[]) { // TO DO } void fusionMaligne (int tab1[], int tab2[], int newTab[]) { // TO DO } int main() { int tab[N]; int elem1, elem2; for(int i = 0; i < N; ++i) { tab[i] = rand()%100; } elem1 = tab[N-1]; elem2 = 100; printf("Le tableau tab a ete initialise avec: \n"); for(int i = 0; i < N; ++i) { printf("%d ", tab[i]); } printf("\n"); printf("L'element %d se trouve dans le tableau tab. Est-ce le cas?\n", elem1); if ( rechercheElem(tab, elem1)) printf ("vrai\n"); else printf ("faux\n"); printf("L'element %d ne se trouve pas dans le tableau tab. Est-ce le cas?\n", elem2); if ( !rechercheElem(tab, elem2)) printf ("vrai\n"); else printf ("faux\n"); decaleTab(tab, 5); printf("Le tableau tab obtenu apres le decalage à partir de la position 5 est: \n"); for(int i = 0; i < N; ++i) { printf("%d ", tab[i]); } printf("\n"); int newN = N1 + N; int tab1[N1], tab2[N2], newTab[newN]; for(int i = 0; i < N1; ++i) { tab1[i] = i * 3; } printf("Le tableau tab1 a ete initialise avec: \n"); for(int i = 0; i < N1; ++i) { printf("%d ", tab1[i]); } printf("\n"); for(int i = 0; i < N2; ++i) { tab2[i] = i; } printf("Le tableau tab2 a ete initialise avec: \n"); for(int i = 0; i < N2; ++i) { printf("%d ", tab2[i]); } printf("\n"); for(int i = 0; i < newN; ++i) { newTab[i] = 0; } fusionNaive(tab1, tab2, newTab); printf("Le tableau newTab apres la fusion de tab1 et tab2 avec l'algo naif: \n"); for(int i = 0; i < newN; ++i) { printf("%d ", newTab[i]); } printf("\n"); for(int i = 0; i < newN; ++i) { newTab[i] = 0; } fusionMaligne(tab1, tab2, newTab); printf("Le tableau newTab apres la fusion de tab1 et tab2 avec l'algo malin: \n"); for(int i = 0; i < newN; ++i) { printf("%d ", newTab[i]); } printf("\n"); return EXIT_SUCCESS; }