Вопрос программирования MATLAB, касающийся строк - PullRequest
0 голосов
/ 23 мая 2011

Напишите скрипт, который загружает файл words.trimmed и предлагает пользователю ввести слово.Ваш скрипт должен затем возвращать каждое слово в файле, которое отличается от слова пользователя только на одну букву.Например, если пользователь вводит «cat», ваш скрипт должен распечатать «bat», «car», «can» и т. Д. В окне командной строки.

Я думал оэта проблема на некоторое время, но я застрял.Мне нужно сравнить каждую букву введенного пользователем слова с чем-то, но я не знаю что.Для всех одинаковых букв z = z + 1.В конце, если abs (z-длина (слово, введенное пользователем)) <= 1, то отображается слово из списка слов.Но я не знаю, как написать код для этого.С чем мне сравнить? </p>

1 Ответ

4 голосов
/ 23 мая 2011

Строки в Matlab - это просто массив символов, которые вы можете легко сравнить, используя ==. Это даст вам логический массив длины строк с 1, где строки идентичны:

>> a = 'abc'
a =
 abc
>> b = 'abd'
b =
 abd
>> a == b
ans =
 1     1     0

Таким образом, ваше сравнение может быть, например:

num_equal_letters = sum(string1 == string2);
if (num_equal_letters == length(string1) - 1)
    % print string...
end
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...