if else statement with strings

조회 수: 12 (최근 30일)
Badr Al-Sabri
Badr Al-Sabri 2022년 5월 7일
댓글: Riccardo Scorretti 2022년 5월 7일
I want to take the user input and check if it is:
if the user input 'high pass' -> calcute this equation:GpRC = tf(R*C,1 + R*C);
if the user input 'low pass' --> calcute this equation:GpRC = tf(1,1 + R*C);
and then plot the true statement
this is the code:
%Make the user choose the filter
msgout = 'Choose from (high pass / low pass) \n';
%Calculate the gain
filter_option = input(msgout);
if strcmp(filter_option,'high pass')
GpRC = tf(R*C,1 + R*C);
plot(f_c,GpRC)
elseif strcmp(filter_option,'low pass')
GpRC = tf(1,1 + R*C);
plot(f_c,GpRC)
else
disp('Error!')
end
  댓글 수: 3
Dyuman Joshi
Dyuman Joshi 2022년 5월 7일
What exactly is the problem you are facing?
Badr Al-Sabri
Badr Al-Sabri 2022년 5월 7일
--> msgout = 'Choose from (high pass / low pass) \n';
When I write "high pass"
I am getting an error

댓글을 달려면 로그인하십시오.

채택된 답변

Riccardo Scorretti
Riccardo Scorretti 2022년 5월 7일
That's being said, your problem is (most probably) that you wish to ask the user to enter a string:
filter_option = input(msgout);
In this case, you must add the second argument 's' to input, otherwise input will look for a numerical value or a numerical expression:
filter_option = input(msgout, 's'); % *** add 's' as second argument ***
  댓글 수: 2
Badr Al-Sabri
Badr Al-Sabri 2022년 5월 7일
Thank you
It worked
Riccardo Scorretti
Riccardo Scorretti 2022년 5월 7일
You are welcome

댓글을 달려면 로그인하십시오.

추가 답변 (0개)

카테고리

Help CenterFile Exchange에서 Graphics Performance에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by