Partage
  • Partager sur Facebook
  • Partager sur Twitter

Ranger des nombres dans l' ordre

Exercice 5 (tableaux)

Sujet résolu
    5 décembre 2006 à 12:56:01

    Bon!, je sais que je vais me faire fusiller pour ce code mais je galère...
    Pourriez vous me remettre sur le bon chemin sans me donner la solution?

    Merci bcp!!
    include <stdio.h>
    #include <stdlib.h>

    void ordonnerTableau (long tableau[], long tailleTableau);

    int main(int argc, char *argv[])
    {
      long tableau [4] = {15, 81, 22, 13};
      ordonnerTableau (tableau, 4);
     
      system("PAUSE");     
      return 0;
    }

    void ordonnerTableau (long tableau[], long tailleTableau)

    {
         long i = 0;
         long valeurTampon = 0;
         
         if (tableau[0] < tableau[1] && tableau[1]< tableau [2] && tableau[2]< tableau [3])
         {
                    for (i=0; i<tailleTableau; i++)
                    {
                        printf ("%ld\n", tableau[i]);
                    }
         }
         else
         { 
             while (tableau[0] < tableau[1] && tableau[1]< tableau [2] && tableau[2]< tableau [3])
         { 
              for (i=0; i<tailleTableau; i++)
              {     
                    if (tableau[i]>tableau[i+1])
                    {
                       valeurTampon = tableau [i+1];
                       tableau [i+1] = tableau [i];
                       tableau [i] = valeurTampon;
                    }
              }
         }
             for (i=0; i<tailleTableau; i++)
                    {
                        printf ("%ld\n", tableau[i]);
                    }   
         }       
         
    }

    • Partager sur Facebook
    • Partager sur Twitter
      5 décembre 2006 à 16:21:52

      La methode de la fonction:

      une premiere boucle qui parcour le tableau (compteur i)
      une deuxieme qui fait la meme chose (compteur j)
      tester si tableau[j] > a tableau[i] et i >= j --> faire les remplacements

      et si tu n'y arrive vraiment pas :

      Secret (cliquez pour afficher)
      void ordonnerTableau (long tableau[], long tailleTableau)

      {
         int i = 0, j = 0, valeurTampon = 0;
         
         for (i=0; i<tailleTableau; i++)
         {
            for (j=0; j<tailleTableau; j++)
            {
               if (tableau[j]>tableau[i] && i>=j)
               {
                     valeurTampon = tableau [j];
                     tableau [j] = tableau [i];
                     tableau [i] = valeurTampon;
               }
            }

         }
      }



      Note: c'est une des noimbreuses methodes pour ranger un tableau
      • Partager sur Facebook
      • Partager sur Twitter

      Ranger des nombres dans l' ordre

      × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
      × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
      • Editeur
      • Markdown