У меня есть программирование, которое я не могу закончить. Эта одна часть меня убивает.Поиск слов в предложениях
Принять текст от пользователя. Примите строку, которую нужно искать. Предполагается, что ваша программа напечатает количество вхождений строки, найденной в тексте, и позицию, в которой был найден шаблон. Посмотрите на следующий образец:
Образец выходного сигнала: Введите текст: «Позвоните мне, Измаил. Несколько лет назад - неважно, сколько именно времени - с небольшими деньгами или без денег в моем кошельке, и ничего особенного, чтобы заинтересовать меня на берегу, я думал, что немного поплыву и увижу водянистую часть мира. Это путь, который я отъезжающих селезенку, и регулируя циркуляцию»
Строка поиска -„Несколько лет назад“
Количество вхождений - 1
Позиция Найдено - 18
Это моя функция:
void getText()
{
string itext, word;
int position;
bool done = false;
cout << "Enter some text" << endl;
cin >> itext;
cout << "Enter the word or phrase to wish to find" << endl;
cin >> word;
char text[itext.length()];
char search[word.length()];
for(int i = 0; i < itext.length(); i++)
{
for(int j = 0; j < word.length(); j++)
{
if(text[i] == search[j])
{
position = i;
cout << position;
}
}
}
}
Это кит проблемы. Вы хотите найти символ НЕ, соответствующий и перейти к следующей позиции. – stark
текст и поиск в нем ничего не имеют. Кроме того, вам нужно проверить, соответствует ли itext [i] слово [0], а затем продолжить сопоставление else, просто увеличивая i; –
Когда вы находитесь внутри внутреннего цикла word.length, вы сравниваете каждый символ строки слова с тем же символом строки фразы. Вы сообщаете об успехе, если какой-либо один символ в слове соответствует текущему символу фразы. –