IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Fortran Discussion :

Tri dans un tableau


Sujet :

Fortran

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Étudiant
    Inscrit en
    Mars 2007
    Messages
    13
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2007
    Messages : 13
    Par défaut Tri dans un tableau
    Voilà, je dois faire un code de tri de tableau à une dimension et je voulais savoir si quelqu'un en avait un déjà dans ses vieux tiroirs.

    J'arrive à trier le tableau par valeur croissante mais je bloque sur le tri des valeurs similaires.

    Je voudrais faire un tableau 2 issu du tableau 1 mais où on aurait enlevé tous les doublons.

    Si quelqu'un a une idee je suis preneur

  2. #2
    Membre averti
    Inscrit en
    Juin 2005
    Messages
    37
    Détails du profil
    Informations forums :
    Inscription : Juin 2005
    Messages : 37
    Par défaut
    Si j'ai bien compris tu as par exemple un tableau d'entier:
    TSource:{4,6,2,7,4,8,8,4,2}
    que tu veux trier en enlevant les doublons.
    Pour l'instant tu obtient
    T1:{2,2,4,4,4,6,7,8,8}
    Pourquoi ne pas essayer au moment d'inserer ta variable dans T1
    de verifier si cette valeur est déja présente dans T1, dans quel cas tu ne l'insert pas.
    Et d'incrementer aussi une variable représentant le nombre d'items inserer dans T1, ce qui te permettrai de redimensioner ton tableau (si c'est possible)
    tu aurait donc en resultat:
    T1:{2,4,6,7,8,nil,nil,nil,nil}
    et Count=5
    En espérant que ca aide;-)

  3. #3
    Membre averti
    Profil pro
    Étudiant
    Inscrit en
    Mars 2007
    Messages
    13
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2007
    Messages : 13
    Par défaut
    Bon deja j'ai avancé j'arrive a trié toutes les valeurs par ordre croissant à enlever les doublons.

    Maintenant le pb est dans le tableau avec les valeurs trièes et les doublons enlevés. J'ai remplacé ceux-ci par une valeur arbitraire (big=2*maxval de t1).
    Et je voudrais faire un nouveau tableau qui va garder que les valeurs différentes et ne pas prendre en compte les doublons qui sont devenus des valeurs big.

    En mettant une condition en if j'elimine les éléments qui valent big masi je n'arrive pas à avoir mon joli tableau de fin avec que des valeurs différents. Toutes les positions ou etaient big sont devenu des 0 mais j'ai toujours un tableau "mal trié"

    Voila si qq1 sait comment réattribuer les valeurs et enlever les éléments 0...

  4. #4
    Membre averti
    Inscrit en
    Juin 2005
    Messages
    37
    Détails du profil
    Informations forums :
    Inscription : Juin 2005
    Messages : 37
    Par défaut
    Peut tu poster ton code? je pense que ce serait plus simple pour
    t'aider à résoudre le problème

  5. #5
    Membre averti
    Profil pro
    Étudiant
    Inscrit en
    Mars 2007
    Messages
    13
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2007
    Messages : 13
    Par défaut
    C'est bon je viens de trouver comment faire en fait .
    Il suffisait de retrier le nouveau tableau avec les valeurs big par ordre croissant et la on voit bien s'afficher les differentes valeurs dans l'ordre croissant et sans doublons avec a la fn du tableau toutes les valeurs de big.

    Je peux mettre le code si des personnes sont intéressé.

    Ps: Je vais essayer de l'améliorer cette aprem si je trouve la motivation

  6. #6
    Modérateur

    Profil pro
    Inscrit en
    Août 2006
    Messages
    974
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Août 2006
    Messages : 974
    Par défaut
    Pour enlever les doublons, quelque chose comme :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Vecteur(2:) = pack(Vecteur(2:),Vecteur(:size(Vecteur)-1) /= Vecteur(2:),Vecteur(2:))
    Réponse plus générale au problème initial :

    http://www.fortran-2000.com/rank/index.html (de Michel Olagnon)

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [Tableaux] tri dans un tableau de variables
    Par astrolane dans le forum Langage
    Réponses: 12
    Dernier message: 15/10/2007, 19h55
  2. Tri dans un tableau à deux dimensions
    Par Neuromancien2 dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 08/08/2007, 12h59
  3. [Tableaux] question recherche et tri dans un tableau
    Par nicopoal dans le forum Langage
    Réponses: 7
    Dernier message: 25/01/2007, 16h41
  4. [Tableaux] Tri dans un tableau
    Par ssebuser dans le forum Langage
    Réponses: 11
    Dernier message: 12/12/2006, 20h29
  5. Tri dans un tableau et indices
    Par size_one_1 dans le forum C
    Réponses: 10
    Dernier message: 16/05/2006, 00h17

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo