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

Algorithmes et structures de données Discussion :

Calcul d'égalités sur matrice


Sujet :

Algorithmes et structures de données

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Septembre 2013
    Messages
    12
    Détails du profil
    Informations personnelles :
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Septembre 2013
    Messages : 12
    Points : 7
    Points
    7
    Par défaut Calcul d'égalités sur matrice
    Bonjour,

    Je planche sur un problème informatique.
    J'ai une matrice 5*5 dont je veux déterminer les égalités entre lignes et colonnes.

    Exemple
    l1- 1 0 2 0 1
    l2- 0 2 0 1 1
    l3- 1 1 1 0 0
    l4- 0 1 0 1 0
    l5- 2 2 0 0 1

    J'ai trouvé une solution en recopiant la matrice ci dessus en l'inversant et en employant le code suivant
    en Pascal.
    D1 est la matrice originale
    D2 la matrice inversée
    D3 la matrice contenant les égalités de chaque ligne avec chaque colonne.

    Code Pascal : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    m:=0;
    for i:=1 to 5 do
    begin
    m:=m+1;
    for j:=1 to 5 do
    begin
    for k:=1 to 5 do if d1[m,j]=d2[k,j] then d3[m,k]:=d3[m,k]+1;
    end;
    end;

    Tout juste soit elle, cette solution ne me satisfait pas. J'aimerais en trouver une autre sans transposer la matrice.

    Merci pour vos réponses.

  2. #2
    Expert éminent sénior Avatar de Flodelarab
    Homme Profil pro
    Inscrit en
    Septembre 2005
    Messages
    5 243
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Charente (Poitou Charente)

    Informations forums :
    Inscription : Septembre 2005
    Messages : 5 243
    Points : 13 458
    Points
    13 458
    Par défaut
    Bonjour

    "i" n'est jamais utilisé.
    "m" a toujours la même valeur que "i".
    Aucune matrice n'est transposée.
    Une matrice inversée n'est pas une matrice transposée. Attention au vocabulaire.
    On ne comprend rien à ton but, mal exposé.
    Cette réponse vous apporte quelque chose ? Cliquez sur en bas à droite du message.

  3. #3
    Futur Membre du Club
    Profil pro
    Inscrit en
    Septembre 2013
    Messages
    12
    Détails du profil
    Informations personnelles :
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Septembre 2013
    Messages : 12
    Points : 7
    Points
    7
    Par défaut
    Citation Envoyé par Flodelarab Voir le message
    Bonjour

    "i" n'est jamais utilisé.
    "m" a toujours la même valeur que "i".
    Aucune matrice n'est transposée.
    Une matrice inversée n'est pas une matrice transposée. Attention au vocabulaire.
    On ne comprend rien à ton but, mal exposé.
    Bonjour,

    Merci pour votre intervention et pour votre cadrage sémantique.

    Oui i n'est pas utilisé. En fait i et m font doubles emplois.
    Le but de cette manipulation est de trouver le nombre de chiffres identiques.
    C'est pas simple d'expliquer pourquoi cela m'intéresse. Je n'ai pas les mots. Désolé.

  4. #4
    Expert éminent sénior Avatar de Flodelarab
    Homme Profil pro
    Inscrit en
    Septembre 2005
    Messages
    5 243
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Charente (Poitou Charente)

    Informations forums :
    Inscription : Septembre 2005
    Messages : 5 243
    Points : 13 458
    Points
    13 458
    Par défaut
    Citation Envoyé par debutant_virtuel Voir le message
    Le but de cette manipulation est de trouver le nombre de chiffres identiques.
    Donc la réponse est 3 ? [0,1,2} ?
    Cette réponse vous apporte quelque chose ? Cliquez sur en bas à droite du message.

  5. #5
    Rédacteur/Modérateur

    Homme Profil pro
    Ingénieur qualité méthodes
    Inscrit en
    Décembre 2013
    Messages
    4 053
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur qualité méthodes
    Secteur : Conseil

    Informations forums :
    Inscription : Décembre 2013
    Messages : 4 053
    Points : 9 392
    Points
    9 392
    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
    For D1 := 1 to 5 do 
      begin
      for D2 := 1 to 5 do
        begin
        cpt :=0
        for i :=1 to 5 do 
          begin
          if M[D1,i] = M[i,D2] then cpt := cpt+1
        end
        print ("  ligne  " + D1 + "  Colonne " + D2 + " compteur = " + cpt)
      end
    end
    Ca devrait fonctionner. En corrigeant bien sur la ligne 'Print' si nécessaire.
    N'oubliez pas le bouton Résolu si vous avez obtenu une réponse à votre question.

Discussions similaires

  1. calcul sur matrice
    Par lepatantpato dans le forum Excel
    Réponses: 4
    Dernier message: 26/08/2018, 12h53
  2. Opération sur matrice: calcul de la STD
    Par Newenda dans le forum Calcul scientifique
    Réponses: 5
    Dernier message: 18/01/2018, 11h54
  3. Nan sur calcul transposé d'une matrice
    Par Teen14 dans le forum Calcul scientifique
    Réponses: 1
    Dernier message: 05/10/2017, 20h43
  4. Calcul des moyennes sur une matrice à 3 dimensions
    Par Devil Shark dans le forum R
    Réponses: 1
    Dernier message: 13/07/2017, 10h03

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