Langage c

Bonjour,
svp
programme pour ajouter un element dans un tableau trier
par exp
on a un tableau trie 1 3 6 7 8
on ajoute 4
1 3 4 6 7 8

programme pour suprimmer un element dans un tableau trie et non trie
Configuration: Windows Vista
Firefox 3.0.3

4 réponses

  1. Salut

    et ni vu ni connu je fais faire mes exos par des bonnes poires sur un forum...

    c'est pas très compliqué, essaie déja de faire quelque chose, et si tu n'y arrive pas, montre-nous ce que tu qs fait, on te dira ce qui ne va pas
    1
    1. #include<stdio.h>
      #include<conio.h>
      #include<stdlib.h>
      void main()
      {
      clrscr();

      int i,m,k ,j ,t[15];
      m= 5;

      for (i=0; i<=m-1; i++)
      {
      printf("dooner i \n ");
      scanf ("%d", & t[i]);
      }

      printf (" \n donner lq valeur de j \n");
      scanf ("%d",&j);

      if ( j > t[m-1])
      t[m]=j;
      else
      {
      i=0;

      while(t[i] < j)
      {
      i++;
      }
      k==j;

      for (i=m-1;i<=k;i--)
      {

      t[i+1]=t[i];

      }
      t[k]= j;
      }
      printf (" le resulat \n");
      for (i=0;i<=m;i++)
      {
      printf (" %d " , t[i]);
      }
      getch();

      }
      si il ya des erreur il faut corrige svp
      1
      1. tu peux trouver les erreurs toi-même, et ca te fera comprendre beaucoup de choses...
        cependant : une premiere piste :
        les 5 premiers éléments de ta liste, que tu saisis par
        for (i=0; i<=m-1; i++)
        {
        printf("dooner i \n ");
        scanf ("%d", & t[i]);
        }
        comment les tries-tu?
        ensuite, à la fin de cette boucle, à quoi est égal i, et dans sa prochaine utilisation, à quelle valeur veux-tu qu'il soit initialisé?
        0
        1. Deja j'espere que la taille de ton tableau est assez grande pour rajouter une valeur, je ne vais pas gerer ce cas mais je dirais que tu pourrais proceder comme ca :

          nb : nombre a rajouter
          taille : taille de ton tableau
          tab : tableau deja trie

          int      tri_tab(int nb, int tab[], int taille)
          {
          int      i;
          int      j;
          int      stop;
          
          stop = 0;
          i = 0;
          while (i < taille && stop == 0)
          {
               if (tab[i] > nb)
               {
                   j = taille;
                   while (j > i)
                   {
                        tab[j + 1] = tab[j];
                        j--;
                   }
                   tab[i] = nb;
                   stop = 1;
               }
          i++;
          }
          return (0);
          }
          


          Je pense que c'est plus claire ..
          0