Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <stdlib.h>
- #include <stdio.h>
- #include <math.h>
- #include <time.h>
- #define size 10
- int rang(int tab[], int valeur, int min, int max) {
- if (min > max) {
- if(valeur>tab[min]{
- return min+1;
- else return min;
- }
- int middle = (min + max) / 2;
- if (tab[middle] <= valeur) {
- return rang(tab, valeur, middle + 1, max);
- }
- else
- return rang(tab, valeur, min, middle - 1);
- }
- void triInsertionDico(int tab[]) {
- int i, j, val, position;
- for (i = 1; i < size; i++) {
- val = tab[i];
- position = rang(tab, val, 0, i - 1);
- for (j = i - 1; j >= position; j--) {
- tab[j + 1] = tab[j];
- }
- tab[j] = val;
- }
- }
- int main() {
- srand(time(NULL));
- int i, tab[size];
- for (i = 0; i < size; i++) {
- tab[i] = rand() % 50;
- printf("%d ", tab[i]);
- }
- triInsertionDico(tab, size);
- printf("\n");
- printf("Tableau : \n");
- for (int i = 0; i < size; i++) {
- printf("%d ", tab[i]);
- }
- system("pause");
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement