(Beginner)Simple for-loop! Help!

8 visualizaciones (últimos 30 días)
Magnarok
Magnarok el 16 de Feb. de 2017
Comentada: Magnarok el 16 de Feb. de 2017
Hello. I have what I believe is a very simple problem, that I just can't wrap my head around.
I want to plot a sine-curve and a square plot that changes between 0 and 1 as the sinus curve goes between positive and negative value. Here is my code:
x=[0:0.1:3*pi];
y=sin(x);
T = zeros(1,length(x));
for i=1:length(x)
if(sin(i) > 0)
T(i) = 1;
else
T(i) = -1;
end
end
plot(x, y, x, T, 'r');

Respuesta aceptada

Geoff Hayes
Geoff Hayes el 16 de Feb. de 2017
Magnarok - rather than conditioning on
sin(i) > 0
use
y(i) > 0
since those are the values of the sine curve. Remember, i is an integer from 1 to the length of your x array, so sin(i) is not what you want to be computing. (I suppose you could do sin(x(i)) > 0 but that seems like extra work when you already have y.)

Más respuestas (0)

Categorías

Más información sobre Loops and Conditional Statements en Help Center y File Exchange.

Etiquetas

Community Treasure Hunt

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

Start Hunting!

Translated by