How can i make the sum of matrix elements>0 under the condition that there are min 3 zeros between the sums?
1 Ansicht (letzte 30 Tage)
Ältere Kommentare anzeigen
hdiba
am 23 Apr. 2016
Kommentiert: hdiba
am 4 Mai 2016
I hava a matrix: a=[2 3 0 0 4; 0 0 0 0 0; 0 5 3 0 4; 14 4 0 1 1; 0 0 0 0 0; 0 0 0 7 9; 0 0 0 0 0; 0 0 0 0 0; 9 6 0 0 1; 1 1 1 0 0];
How can i make the sum of elements>3, under the condition that there are at least 3 zeros between the last element of one and the first element of the next sum?
Output should be: E=[9 32 16 19]
thanks!
2 Kommentare
Image Analyst
am 23 Apr. 2016
Next sum? Why is there more than one sum??? Looks like you need to read this before you fix your post.
Akzeptierte Antwort
Azzi Abdelmalek
am 23 Apr. 2016
Bearbeitet: Azzi Abdelmalek
am 23 Apr. 2016
a=[2 3 0 0 4; 0 0 0 0 0; 0 5 3 0 4; 14 4 0 1 1; 0 0 0 0 0; 0 0 0 7 9; 0 0 0 0 0; 0 0 0 0 0; 9 6 0 0 1; 1 1 1 0 0]
b=reshape(a',1,[]);
id=~b;
ii=strfind(id,[1 1 1 0])+2;
ii=[0 ii numel(b)];
for k=1:numel(ii)-1
out(k)=sum(b(ii(k)+1:ii(k+1)));
end
out
10 Kommentare
Weitere Antworten (0)
Siehe auch
Kategorien
Mehr zu Resizing and Reshaping Matrices finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!