Is there a specific function forcing user to select a particular option?

Hi,
I want to force user to select a particular option in a console program.
For example, the script might ask which pet does the user have and force him to type cat, dog, bird or other. Is there a specific function for this? Such as:
a_fancy_function('Which pet do you have? (cat, dog, bird, other)', 'cat','dog','bird','other');
Thank you.

Answers (4)

See example 2 of menu()

2 Comments

It is the only graphics function that I can think of that is simulated as text when there is no graphics. An oddity that is easily forgotten.

Sign in to comment.

Hi,
no, for a console program there is no function for this. You will need to use the function input and verify what has been typed by the user (in a while loop with e.g. three attempts at most).
For a non console program you can use listdlg.
Titus
you can use
i= menu(' Which Pet do You Have?','cat','dog','bird','other');
Which results in a pop up menu with options which returns the values for i as
i=1 if cat is selected.. i=2 if dog is selected.. i=3 if bird is selected.. 1=4 for other ..

2 Comments

This works differently on a console program, as it does not pop-up if there are no graphics. It will, however, happen to work, as menu() detects the lack of graphics and uses a text prompt instead. This is as shown in example 2 of the documentation for menu(), as I indicated in my answer.
Yeah, i fully agree with you. I tried out in console program and found not working. Thanks for the information.

Sign in to comment.

Thank you all for your urgent responses.

Categories

Find more on MATLAB in Help Center and File Exchange

Tags

Asked:

on 4 May 2015

Commented:

on 5 May 2015

Community Treasure Hunt

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

Start Hunting!