Partage
  • Partager sur Facebook
  • Partager sur Twitter

[ADA] Problème de tableau et ordre croissant

Langage non précis mais surtout question d'algorithme

Sujet résolu
    9 octobre 2006 à 22:12:17

    Bonjour à tous, j'ai un exercice de programmation (ADA) à faire et je rencontre un soucis. Je vous expose le soucis.
    Je dispose d'un tableau de 3 colonne (nombre fixe) et jusqu'à 10 lignes (taille variable de 1 à 10). Les colonnes représentent ces valeurs :
    • N° du vendeur
    • Nombres de produits vendus
    • Somme rapportée

    Et je dois classer ce tableau par ordre croissant de somme rapportée, mais je n'y arrive pas, j'ai essayé de m'aider d'un second tableau (le premier tableau est créé lors de l'ajout des lignes). En copiant la première ligne d'un tableau à l'autre et en comparant cette dernière au reste du premier tableau 1 par 1 (boucle).
    Une fois que la première ligne possède la plus basse, on recommence avec les lignes suivantes. Mais j'ignore pourquoi ça ne marche pas.
    Voici le code de ma prcédure actuelle :


    procedure Affichage_Somme_Croissant (Compt : in Integer; T : in T_Bilan) is
       T_Croissant : T_Bilan;
       X : Integer;
       Y : Integer;
    begin
       X:=1;
       Y:=1;
       for X in 1..Compt
       loop
          for Y in X..Compt         
          loop
             if T(Y).Somme_Rapport <= T(X).Somme_Rapport
                then
                   T_Croissant(Y).Num_Vend:=T(Y).Num_Vend;
                   T_Croissant(Y).Quant_Vend:=T(Y).Quant_Vend;
                   T_Croissant(Y).Somme_Rapport:=T(Y).Somme_Rapport;
             end if;           
          end loop;
       end loop;
       Put("Numero du vendeur");
       Put("    ");
       Put("Quantite de produits vendus");
       Put("    ");
       Put("Somme rapportee");
       New_Line;
       for Y in 1..Compt   
       loop
          Put(T_Croissant(Y).Num_Vend);
          Put("                     ");
          Put(T_Croissant(Y).Quant_Vend);
          Put("                            ");
          Put(T_Croissant(Y).Somme_Rapport);
          New_Line;
       end loop;     
    end Affichage_Somme_Croissant;


    Merci d'avance pour votre aide, bonne soirée.
    • Partager sur Facebook
    • Partager sur Twitter
      11 octobre 2006 à 20:19:09

      Vraiment personne ? c'est le seul problème que je rencontre dans mon programme. :'(

      (Up dissimulé :p )

      • Partager sur Facebook
      • Partager sur Twitter
        12 octobre 2006 à 15:06:30

        Bon ben j'ai réussi.
        Merci quand même pour les 81 lectures...
        • Partager sur Facebook
        • Partager sur Twitter

        [ADA] Problème de tableau et ordre croissant

        × 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