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!
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!
Si ta matrice est A ayant les dimensions 6 x 7
voici la solution
Nombres successifs sur les colonnes
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.
Code : Sélectionner tout - Visualiser dans une fenêtre à part sum(sum((A( : ,1:5) - A( : ,2:6)==0)))
Bonsoir,
Un code un peu plus général, quel que soit la dimension de la matrice:
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
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
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
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
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager