Help!!!!!!!! How to replace all the negative values in an array with zeros?
15 views (last 30 days)
Show older comments
Would anyone know how to use the vectorization method for this question? I did it the loop method but I would also need to do it for vectorization method, any ideas?
y(t) =sin(t) for all t where sint>0
elsewhere
y(t)=0
for -6 π ≤ t ≤ 6 π at intervals of π/10. Use vectorization to solve it.
This is how I did it with loops
%Inilization
aa=1;
ii=0;
t=0;
%Running the function for each -6pi to 6pi with an interval of pi/10
for t=input('input vector t:')
if sin(t)>0
y(aa)=sin(t);
else
y(aa)=0;
end
aa=aa+1;
ii=ii+1;
end
% Displaying the value for each count
t=-6*pi:pi/10:6*pi;
a=1:ii;
table=[a' y' t'];
How would I change the negative values in vector y to zero using vectorization in a way?
Thank you
0 Comments
Accepted Answer
Honglei Chen
on 12 Mar 2012
Did you delete your original question? I answered this several days ago. Please do not delete your question. Instead, if the answer is not what you want, update your question or add comments.
For this question, you can use logical index
t = (-6:0.1:6)*pi;
y = sin(t);
y(y<0) = 0;
More Answers (1)
See Also
Categories
Find more on Matrix Indexing in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!