all loop values in one vector

what is the problem please ?
z=[];
for n=2:length(acc_norm)-1;
if abs(acc_norm(n,:))>max(abs(acc_norm(n-1,:)),abs(acc_norm(n+1,:)))
Sc='Speak';
elseif abs(acc_norm(n,:))<min(abs(acc_norm(n-1,:)),abs(acc_norm(n+1,:)))
Sc='Svalley';
else Sc='Sintmd';
end
z=[z;Sc];
end

Answers (1)

Remember that strings are not entities in themselves: strings are row vectors of characters. So Sc='Speak'; is setting Sc to a row vector of length 5, and Sc='Svalley' is a row vector of length 7. Your z=[z;Sc] is then attempting to put together row vectors of different lengths.
I suggest you use
z{end+1} = Sc;

Categories

Find more on Loops and Conditional Statements in Help Center and File Exchange

Tags

Asked:

on 17 Apr 2016

Edited:

on 18 Apr 2016

Community Treasure Hunt

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

Start Hunting!