How do I keep consecutive number in a matrix?

For a matrix A,
A = [1 1 0 0 1 1 0 0;
1 0 0 0 1 1 0 0;
0 1 0 0 1 1 0 0]
I am trying to get B. How do I make it?
B = [1 1 0 0 0 0 0 0;
1 0 0 0 0 0 0 0;
0 0 0 0 0 0 0 0]
If the 1st number of a row is 1,
then the 1st sequence of consecutive 1 is kept and the rest numbers in that row turn 0.
i.e., A(1,:) -> B(1,:), A(2,:) -> B(2,:)
If the 1st number of a row is 0,
then all numbers in that row turn 0.
i.e., A(3,:) -> B(3,:)

 Réponse acceptée

Matt J
Matt J le 25 Déc 2018
B=cummin(A,2);

2 commentaires

Image Analyst
Image Analyst le 25 Déc 2018
Clever. I didn't know about this function. +1 vote.
Linjun He
Linjun He le 25 Déc 2018
Cool!

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by