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 :

trouver le nombre d'éléments qui se suivent dans une matrice [Débutant]


Sujet :

MATLAB

  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Novembre 2011
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2011
    Messages : 2
    Points : 2
    Points
    2
    Par défaut trouver le nombre d'éléments qui se suivent dans une matrice
    Bonsoir,

    mon problème est le suivant:

    j'ai un matrice 6*7 remplie de 0, 1 et 2.
    J'aimerais connaître le nombre de 1 qui se suive dans une ligne donnée.(ou une colonne ou une diagonale)

    Merci d'avance pour aide!

  2. #2
    Nouveau membre du Club
    Inscrit en
    Décembre 2011
    Messages
    29
    Détails du profil
    Informations forums :
    Inscription : Décembre 2011
    Messages : 29
    Points : 30
    Points
    30
    Par défaut
    Si ta matrice est A ayant les dimensions 6 x 7

    voici la solution

    Nombres successifs sur les colonnes

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    sum(sum((A(1:5,:) - A(2:6,:)==0)))
    Nombres successifs sur les lignes

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    sum(sum((A( : ,1:5) - A( : ,2:6)==0)))
    Pour la diagonale je pense qu'il faut coder. Difficile de le faire directement en une seule formule quoique possible.

  3. #3
    Membre éprouvé
    Inscrit en
    Août 2010
    Messages
    1 124
    Détails du profil
    Informations forums :
    Inscription : Août 2010
    Messages : 1 124
    Points : 1 277
    Points
    1 277
    Par défaut
    Bonsoir,

    Un code un peu plus général, quel que soit la dimension de la matrice:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    sum(sum(diff(x,1)==0)) %sur les colonnes
    sum(sum(diff(x,2)==0)) %sur les lignes
    sum(sum(diff(diag(x),1)==0)) %sur la diago
    NB: cela calcule le nombre d’éléments égal à son suivant, indistinctement que ce soit des 1 ou autre chose. Pour avoir les 1 seulement:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    sum(sum(diff(x,1)==0 && x(2:end,:)==1)) % sur les colonnes
    sum(sum(diff(x,2)==0 && x(:,2:end)==1)) % sur les lignes

  4. #4
    Candidat au Club
    Profil pro
    Inscrit en
    Novembre 2011
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2011
    Messages : 2
    Points : 2
    Points
    2
    Par défaut
    Merci à vous deux pour vos réponses rapides et utiles!!
    c'est super!
    surtout quand ça marche

    Bonnes fêtes de fin d'année

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

Discussions similaires

  1. Réponses: 0
    Dernier message: 29/06/2011, 10h50
  2. Réponses: 0
    Dernier message: 31/05/2011, 18h58
  3. [Débutant] Trouver le nombre d'éléments supérieurs à une certaine valeur
    Par IFREMER dans le forum MATLAB
    Réponses: 2
    Dernier message: 07/05/2009, 14h32
  4. [MySQL] comment trouver le nombre d'éléments dans une sgbd
    Par Bathou dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 03/06/2008, 17h29
  5. Réponses: 1
    Dernier message: 13/02/2007, 09h54

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