Using a variable in an input prompt
    107 views (last 30 days)
  
       Show older comments
    
I am trying to use the iterator (ii) of my for loop as a string in my input prompt. The code is shown below
for ii = 1:n
  x = input('What is the orientation of molecule ' num2str(ii) 'in the x-direction?');
end
but this does not work. Any suggestions?
Accepted Answer
  Walter Roberson
      
      
 on 6 Nov 2015
            x = input(['What is the orientation of molecule ' num2str(ii) 'in the x-direction?']);
More Answers (2)
  Wanbin Song
    
 on 6 Nov 2015
        Input argument of 'input' function should be a text.
Your code shows that your input arguments of 'input' function consists of three string.
Just combine them as below.
for ii = 1:n
     x = input(['What is the orientation of molecule ' num2str(ii) 'in the x-direction?']);
end
Then it will work.
  Steven Lord
    
      
 on 28 Sep 2024
        Another possibility you can use in recent releases of MATLAB (since I think release R2016a) is to use a string array.
ii = 5;
promptMessage = "What is the orientation of molecule " + ii + " in the x direction?"
You could then pass promptMessage into the input function (or directly construct the prompt message inside the input call.) I didn't show that because calling input is not supported on MATLAB Answers.
0 Comments
See Also
Categories
				Find more on Logical 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!


