Help with For/If commands

1 view (last 30 days)
Jevin
Jevin on 18 Apr 2012
I am working on a project right now, and have a menu asking what a user would like to solve for. The menu corresponds to function handles, and in the function handles the variables can be used in more than 1. What i want to do is to have it run for variable A or B or C, and if it doesn;t have A B or C in it, it will stop and move to D E and F.
Here is what some of the code looks like :
(choice is the variable i assigned for the menu)
if choice == 1,4;6;7;8;10;11;
a=input ('What is the cross sectional area? ');
else
end
if choice ==2,3;5;6;
cl=input('What is the change in length? ');
else
end

Accepted Answer

Junaid
Junaid on 18 Apr 2012
Use switches .. I hope it will solve your problem.
ex.
switch choice
case {1,4,6,7,8,10,11}
% your code here
case {2,3,5,6}
% your code here
end
  1 Comment
Jevin
Jevin on 18 Apr 2012
That seems to work at first, but later on i have something along the lines of :
if choice == 2||3||4||5||6||7;
l=input('What is the length of your object? ');
end
if choice == 8||9||11;
cp=input('How many points of contact does your object have? ');
end
if choice == 3||4||6||7;
em=input('What is the elastic modulus of your material? ');
so it needs to work for more than one, since i am asking the components of formulas, and 5 of the formulas share 1 variable etc.

Sign in to comment.

More Answers (1)

Walter Roberson
Walter Roberson on 18 Apr 2012
switch choice
case {2, 3, 4, 5, 6, 7}
%your code here
end
switch choice
case {8, 9, 11}
%your code here
end
If you prefer to use "if":
if ismember(choice, [1 4 6 7 8 10 11])
%your code here
end
if ismember(choice, [8, 9, 11])
%your code here
end

Categories

Find more on Scope Variables and Generate Names in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!