Составить программу в паскаль, которая определяет содержится ли в данном предложении слова "мама" и "мир"

HupiTip HupiTip    3   17.02.2020 11:14    1

Ответы
00001Wolf 00001Wolf  11.10.2020 06:15

ответ:Доброго времени суток.

Очень не корректно поставлен вопрос. Что есть Текст? Это текстовый файл, строка, введенная пользователем, еще что-то? Думайте, прежде чем спросить, и, скорее всего, получите нормальный ответ.

Поэтому, поскольку нет конкретики, будем считать текстом строку, введенную пользователем.

Write('Введите текст : ');

ReadLn(S);

В переменной S теперь находится некоторый текст. Начнем с ним работать. Будем считать словом последовательность символов, ограниченных с обеих сторон пробелами. Сначала сделаем копию введенного текста.

S1 := ' ' + S + ' '; {чтобы не потерять первое и последнее слова}

А дальше,  

N := 0; {счетчик слов Мама}

while Pos(' Мама ', S1) > 0 then begin

Delete(S1, Pos(' Мама ', S1)+1, 4);

N := N + 1;  

end;

Поскольку может в тексте быть и "мама", то повторим

while Pos(' мама ', S1) > 0 then begin

Delete(S1, Pos(' мама ', S1)+1, 4);

N := N + 1;  

end;

Вот и все. Осталось вывести результат.

WriteLn('Во ввденном тексте слово "мама" встречается ', N, ' раз');

Удачи!

PS Можно было бы не делать второй проход, если предварительно преобразовать введенный текст к одному регистру, а затем искать подстроку в этом регисте.

ПОКАЗАТЬ ОТВЕТЫ
serebrykov947 serebrykov947  11.10.2020 06:15

===== PascalABC.NET =====

begin

 var a := ReadString('Введите предложение:').ToWords;

 if a.Contains('мама') then

   Println('Найдено слово "мама"');

 if a.Contains('мир') then

   Print('Найдено слово "мир"');

end.


Составить программу в паскаль, которая определяет содержится ли в данном предложении слова мама и
ПОКАЗАТЬ ОТВЕТЫ
Другие вопросы по теме Информатика