if else statements with asking user for input

3 次查看(过去 30 天)
My code is attached. Is there a way to only have one prompt at the beginning of the if else statements, instead of 2? I have 4 different equations solving for the same value (kv), except each equation is for different profiles.
Also I was also considering implementing a function file into the code. The second file is a function file. The function file calculates another variables 'sB'. The variable 'sB' is in the function file, while kv is in primary script.

回答(1 个)

Star Strider
Star Strider 2017-11-10
I prefer the inputdlg (link) function.
You can replace your first two input statements with this:
prompt = {'Enter pitch diameter', 'Enter RPM'};
dlg_title = 'Input';
num_lines = [1 40];
default_ans = {'10', '1500'};
dn = inputdlg(prompt,dlg_title,num_lines,default_ans, [1 50]);
d = str2double(dn(1));
n = str2double(dn(2));
For your third input statement, I would use the related listdlg (link) function.

标签

Community Treasure Hunt

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

Start Hunting!

Translated by