if, or or or or or

64 次查看(过去 30 天)
furcifer
furcifer 2018-12-12
I'm just wondering if Matlab can string together "or" statements? The current code for a simple menu is using
userinput = input("Select 1,2,3,4 and press enter: ")
if X == 1
disp(stuff)
if X == 2
disp(stuff)
% etc. this is just an example
end
Seems like you should be able to use if X=(1||2||3||4) to avoid the multiple lines of code. Then:
if X = (1||2||3||4)
Y= sprintf ("You selected: ", userinput)
disp(Y)
else
disp("That was not a choice")
end
We're on to using C++ now so I'm thinking along the lines of
cout <<"You seleceted"<< variable<< endl;
This is probably better done as a switch case but I was thinking about booleans when I started to try this.

采纳的回答

Cris LaPierre
Cris LaPierre 2018-12-12
编辑:Cris LaPierre 2018-12-12
It can, but you have to be a little more specific about it
if X == 1 || X == 2 || X == 3 || X == 4
  9 个评论
Walter Roberson
Walter Roberson 2018-12-13
X = sprintf("You Selected %d",answer);
furcifer
furcifer 2018-12-13
Thanks. I think I got it now. I forgot to save the code and was getting a weird error.
Thanks for all the help.

请先登录,再进行评论。

更多回答(1 个)

Image Analyst
Image Analyst 2018-12-12
Of course MATLAB will let you use input() multiple times.
You might want to consider menu():
buttonNumber = menu('Make a selection', '1', '2', '3', '4');
if buttonNumber == 1
% Code to execute if they clicked 1.
elseif buttonNumber == 2
% Code to execute if they clicked 2.
elseif buttonNumber == 3
% Code to execute if they clicked 3.
elseif buttonNumber == 4
% Code to execute if they clicked 4.
end
  4 个评论
furcifer
furcifer 2018-12-13
I'm studying Matlab and C++ at the same time for an exam. The questions are going to specifically state to use "while", "do while", "if" etc. Looking at this type of question it's possible it could be asked to use boolean operators.
X <= 4
isn't quite as "idiot proof". -4 isn't a choice but the program returns a value. This isn't so much about saving code as trying to make sure how I think gets translated into what's being asked so if my code isn't excatly the same it functions the same way.
Walter Roberson
Walter Roberson 2018-12-13
x >= 1 && x <= 4

请先登录,再进行评论。

Community Treasure Hunt

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

Start Hunting!

Translated by