Need help inputing words
    3 vues (au cours des 30 derniers jours)
  
       Afficher commentaires plus anciens
    
    Samy Ben Thabet
 le 9 Oct 2018
  
    
    
    
    
    Commenté : Image Analyst
      
      
 le 9 Oct 2018
            I want to ask my user to input a shape:
h=input('What shape do you want?:');
if h==square;
disp(h)
But this never works, Matlab shows me the following error message: "'square' requires Signal Processing Toolbox."
Can someone help me find a way to make this work please :)
0 commentaires
Réponse acceptée
  Star Strider
      
      
 le 9 Oct 2018
        You need to add the 's' to the input argument list, and then use strcmp for the comparison.
Try this:
h=input('What shape do you want?:', 's');
if strcmp(h, 'square')
    sprintf('SQUARE!')
end
1 commentaire
  Image Analyst
      
      
 le 9 Oct 2018
				If you can't use contains() like in my answer because your version of MATLAB is too old, then you can make this more robust by using strcmpi() instead of strcmp() and use strtrim() in case the user put any leading or trailing spaces on their response:
h = input('What shape do you want? ', 's');
if strcmpi(strtrim(h), 'square')
    fprintf('SQUARE!\n')
end
Plus de réponses (1)
  Image Analyst
      
      
 le 9 Oct 2018
        Try using contains():
clc;
userResponse = input('What shape do you want? ', 's')
if contains(userResponse, 'square', 'IgnoreCase', true)
  uiwait(helpdlg('You want a square.'));
else
  message = sprintf('%s is an unrecognized response.\nTry again.', userResponse);
  uiwait(warndlg(message));
end
0 commentaires
Voir également
Catégories
				En savoir plus sur Data Import and Analysis dans Help Center et File Exchange
			
	Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!


