Using a for loop to print function values

조회 수: 2 (최근 30일)
Petch Anuwutthinawin
Petch Anuwutthinawin 2021년 6월 15일
편집: Scott MacKenzie 2021년 6월 15일
I am trying to make a function that inputs Vs and outputs 0 if Vs<=0.6, and outputs VL-0.6 if Vs>0.6. I need this function to loop for a series of input Vs vector of values, and output a vector of values based on the function. The code I wrote currently keeps overriding the VL value and outputs only one scalar value. How do I make it output a vector of values?
V=0:Vs
for k = 1:length(V);
if Vs(k)<=0.6; %if this is true
VL(k)=0;% it prints a 0
else
VL(k)=Vs-0.6; % prints a Vs-0.6 value.
end
end

채택된 답변

Scott MacKenzie
Scott MacKenzie 2021년 6월 15일
편집: Scott MacKenzie 2021년 6월 15일
Seems you are confusing Vs with V. And what is VL-0.6 in your question? Try this... (outputs a vector of values)
V = rand(1,10); % test data --> your inputed Vs
for k = 1:length(V)
if V(k) <= 0.6 % if this is true
VL(k) = 0; % it prints a 0
else
VL(k) = V(k) - 0.6; % prints a V-0.6 value
end
end
VL
Actually, it is not clear what you are trying to do, but the code above outputs a vector for VL -- your main objective, if I understand correctly.

추가 답변 (0개)

카테고리

Help CenterFile Exchange에서 Loops and Conditional Statements에 대해 자세히 알아보기

태그

Community Treasure Hunt

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

Start Hunting!

Translated by