How to Use Character String as a For Loop Variable.

I am attempting to use a character string as a variable in the following for loop:
Spring_Type = "Closed and Ground";
if Spring_Type = "Open";
Pitch = (Free_Length - D_Wire)/A_Coils;
elseif Spring_Type = "Open and Ground";
Pitch = Free_Length/Tot_Coils;
Pitch = (Free_Length - (2*D_Wire))/A_Coils;
elseif Spring_Type = "Closed";
Pitch = (Free_Length - (3*D_Wire))/A_Coils;
elseif Spring_Type = "Closed and Ground";
Pitch = (Free_Length - (2*D_Wire))/A_Coils;
end
All the other variables are fully defined in a section before this. When I run this section I get the following error:
Could someone explain why I cannot use a character string as a variable, and if there is an alternative way to achieve what I am doing?
Many thanks,

 채택된 답변

jonas
jonas 2018년 8월 5일
편집: jonas 2018년 8월 5일
The condition must output a logical. Use e.g. isequal or ==
if isequal(Spring_type,'Open')
...
end
or
if Spring_type == 'Open'
...
end

추가 답변 (0개)

카테고리

도움말 센터File Exchange에서 Loops and Conditional Statements에 대해 자세히 알아보기

제품

릴리스

R2017a

질문:

2018년 8월 5일

편집:

2018년 8월 5일

Community Treasure Hunt

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

Start Hunting!

Translated by