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

MATLAB Discussion :

Répétition d'éléments dans un vecteur


Sujet :

MATLAB

  1. #1
    Nouveau Candidat au Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Mai 2014
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Enseignement

    Informations forums :
    Inscription : Mai 2014
    Messages : 4
    Points : 0
    Points
    0
    Par défaut Répétition d'éléments dans un vecteur
    Bonjour,

    j'ai un vecteur colonne
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    KK =       [2      3      4      5      3      4      2      4      3      5      1      2      1      4]';
    j'essaye de chercher qui est le premier élément qui se répète 3 fois la 3ème sera par la suite éliminée et je compte 2 à 2 les élément qui fait un couple avec l'élément supprimé sera aussi éliminé de vecteur par exemple le 1er élément qui se repète 3 fois c'est le numéro 4 alors il sera éliminé et le numéro qui construit un couple avec lui c'est le numéro 2 alors il est aussi éliminé ect..

    à la fin je veux avoir le nouveau vecteur
    si pouvez vous m'aider à faire un petit programme sur MATLAB pour obtenir le nouveau vecteur colonne.
    merci d'avance.

  2. #2
    Modérateur

    Homme Profil pro
    Ingénieur en calculs scientifiques
    Inscrit en
    Août 2007
    Messages
    4 639
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Ingénieur en calculs scientifiques

    Informations forums :
    Inscription : Août 2007
    Messages : 4 639
    Points : 7 614
    Points
    7 614
    Par défaut
    Bonjour,

    ce n'est pas très clair. Pourquoi le couple 3 5 a-t-il été éliminé? (si j'ai bien compris ce qu'est un couple)

    As-tu essayé de coder quelque chose? Peux-tu nous le montrer, même si cela ne marche pas?
    Pour une bonne utilisation des balises code c'est ici!
    Petit guide du voyageur MATLABien : Le forum La faq Les tutoriels Les sources


    La nature est un livre écrit en langage mathématique. Galilée.

  3. #3
    Nouveau Candidat au Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Mai 2014
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Enseignement

    Informations forums :
    Inscription : Mai 2014
    Messages : 4
    Points : 0
    Points
    0
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    % Programme de l'Arbre Couvrant de Poids Miniumum (ACPM)
    %-------------------------------------------------------
    %
    clear all;
    clc
    % les données
    Ns=5; % nombre de sommet
    So=[1 2 3 4 5]'; % les sommets
    Nr=7; % nombre d'arètes
    % les arètes
    Ar(1,2)=1; Ar(1,4)=1; Ar(2,3)=1;Ar(2,4)=1; Ar(3,4)=1; Ar(3,5)=1; Ar(4,5)=1; 
    % les poids
    Pds(1,2)=35; Pds(1,4)=40; Pds(2,3)=10;Pds(2,4)=25; Pds(3,4)=20; Pds(3,5)=30; Pds(4,5)=15;
    % les boucles
    % Nb=6;
    % Bou=[1 2 2 4 1 4; 1 2 3 4 1 0; 1 2 3 5 4 1; 2 3 4 2 0 0; 2 3 5 4 2 0; 3 4 5 3 0 0];
    % tri
     M=[];
    for i=1:Ns
        for j=i+1:Ns
            if Ar(i,j)~=0
                TR=Pds(i,j);
                M=[M;i,j,TR];
            end
        end
    end
    [a,b]=sort(M(:,3));
    XX=M(b,1:3);
    % parcours du graphe
    YY=XX(:,1:2);
     
    MM=YY';
    KK=MM(:);
     
    for j=1:length(KK)-2
      for  k=j+1:length(KK)-1
             for h=k+1:length(KK)-1
                if KK(j)==KK(k)& KK(j)==KK(h)
                    KK(h)=[]
     
     
     
                end
             end
      end
    end
    Mon travail s'agit de trouver un graphe partiel d'un graphe orienté dont les arêtes sont valuées.
    Nom : 1.png
Affichages : 750
Taille : 9,4 Ko
    nous essayons de travailler avec l'algorithme de Kruskal d'où chaque couple de vecteur KK correspond à un arête de graphe(exemple:le couple 2-3 correspond à l'arête qui relie les nœuds 2 et 3 puis on a le couple 4-5 (c-a-d l'arête 4-5).... nous devons par la suite vérifier que la succession des arêtes ne construit pas une boucle et l'arête qui participe à la création de boucle sera par la suite supprimée.Notre aidée est que la transformation de boucle doit être par la répétition d'un nœud (chaque élément de KK) 3 fois alors nous devons supprimer l'arète qui contient ce nœud. En premier lieu nous supprimons l’arête 2-4 par la suite l'arête 3-5 et enfin l'arête 1-4 car ces derniers participent à la création des boucles.Le résultat final sera par la suite:
    Nom : 2.png
Affichages : 765
Taille : 6,7 Ko
    et Merci davance

  4. #4
    Modérateur

    Homme Profil pro
    Ingénieur en calculs scientifiques
    Inscrit en
    Août 2007
    Messages
    4 639
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Ingénieur en calculs scientifiques

    Informations forums :
    Inscription : Août 2007
    Messages : 4 639
    Points : 7 614
    Points
    7 614
    Par défaut
    Je ne comprends pas vraiment ton code...,(et dans la dernière partie de ton code, il ne faut surtout pas supprimer des lignes d'un tableau à l'intérieur d'une boucle qui dépend du nombre de lignes de ton tableau!!)

    Pour compter les éléments qui se répètent dans KK :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    >> a = unique(KK)
     
    a =
     
         1
         2
         3
         4
         5
     
    >> n = histc(KK,a)
     
    n =
     
         2
         3
         3
         4
         2
    Après il faut que tu cherches les couples correspondant pour les éléments ayant 3 répétitions au moins.
    Pour une bonne utilisation des balises code c'est ici!
    Petit guide du voyageur MATLABien : Le forum La faq Les tutoriels Les sources


    La nature est un livre écrit en langage mathématique. Galilée.

  5. #5
    Nouveau Candidat au Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Mai 2014
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Enseignement

    Informations forums :
    Inscription : Mai 2014
    Messages : 4
    Points : 0
    Points
    0
    Par défaut
    J'ai travaillé déjà avec votre code et je n'arrive pas à trouver le résultat.

    En tous cas merci bien pour votre intérêt et je vous remercie énormément. c'est gentil de votre part

  6. #6
    Nouveau Candidat au Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Mai 2014
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Enseignement

    Informations forums :
    Inscription : Mai 2014
    Messages : 4
    Points : 0
    Points
    0
    Par défaut
    Merci c'est bien résolu merci encore une fois.je vous en prie.

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

Discussions similaires

  1. Lecteur d'un élément dans un vecteur
    Par philouxy dans le forum VHDL
    Réponses: 0
    Dernier message: 20/06/2011, 21h15
  2. Augmenter le nombre d'éléments dans un vecteur
    Par deubelte dans le forum C++
    Réponses: 18
    Dernier message: 15/09/2009, 15h43
  3. Réponses: 24
    Dernier message: 19/03/2009, 17h18
  4. recherche un élément dans un vecteur trié
    Par jena dans le forum Signal
    Réponses: 5
    Dernier message: 10/12/2008, 13h02
  5. Suppression d'un élément dans un vecteur
    Par C.R.E.A.M dans le forum SL & STL
    Réponses: 6
    Dernier message: 03/02/2008, 00h11

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