How do I insert the input of a string into an input asking for a number?

1 view (last 30 days)
My example is naming a planet then asking for the mass of that specific planet in the next line. How do I call the name of the planet as a string into the second line?
  1 Comment
Kyle Reagan
Kyle Reagan on 9 Mar 2016
Right now I have name=input('What is the name of the planet?','s'); mass=input('What is the mass of %s?',name);

Sign in to comment.

Accepted Answer

Star Strider
Star Strider on 9 Mar 2016
I prefer using the inputdlg funciton.
This works:
p_namec = inputdlg('What is the name of the planet? ');
p_massc = inputdlg(sprintf('What is the mass of %s? ', p_namec{:}));
p_mass = str2num(p_massc{:}); % Numeric Value
  2 Comments
Kyle Reagan
Kyle Reagan on 9 Mar 2016
Thank you! Is there a way to do it without the dialog boxes popping up? Like how the normal input function lets you type right next to it.
Star Strider
Star Strider on 9 Mar 2016
My pleasure!
Just use the input function:
p_name = input('What is the name of the planet? ', 's');
p_mass = input(sprintf('What is the mass of %s? ', p_name));
p_mass = p_mass; % Numeric Value
That should work.

Sign in to comment.

More Answers (0)

Community Treasure Hunt

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

Start Hunting!