replacing sequences in matrix
2 ビュー (過去 30 日間)
古いコメントを表示
Hello, in the code below I am attempting to do the following:
yourarray = ['hood'; 'hope'; 'make';];
guess = input('Enter a four letter word: ');
yourarray(ismember(yourarray, 'guess', 'rows'), :) = [];
disp(yourarray);
- Take in user input for a four letter word
- Remove the four letter input from the matrix then display the resulting matrix with the user input removed
I have had no luck. I am trying make it so that I can remove any sequence letter the user chooses for instance, instead of one of the three words in the matrix he may choose "mope". How can I better accomplish this? Any advise is greatly appreciated. I have tried other methods but landed on this one as being what I think will be the closest possible solution. Thanks for any help!
0 件のコメント
回答 (1 件)
Image Analyst
2019 年 11 月 22 日
Try this:
yourarray = {'hood'; 'hope'; 'make'}; % Cell array.
guess = input('Enter a four letter word: ', 's'); % Use 's' option.
index = ismember(yourarray, guess, 'rows')
if all(index == 0)
% All zeros mean it was not found.
message = sprintf('%s was not found in the list.', guess);
uiwait(warndlg(message));
else
% If any element of index is 1 then it was found at that row.
row = find(index)
yourarray(row, :) = [];
celldisp(yourarray);
end
4 件のコメント
参考
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!