Помощь - Поиск - Пользователи - Календарь
Полная версия: Поиск слова в данном тексте...
Форум «Всё о Паскале» > Pascal, Object Pascal > Задачи
Elisei
Задание: Дан текст и слово, найти сколько раз данное слово встречается в тексте.

то что у меня получилось но непашет=\
Код
program CountX;

Const

n=100;

ch='б«®ў®';

Var

i : Integer;

count:Integer;

S : Array [1 .. n] of char;

Begin

writeln ('‚Введите текст');

for i:=1 to n do read(S[i]);

count:=0;

for i:=1 to n do if S[i]=ch then count:=count +1;

writeln ('слово "' , ch, '" встречаеться в тексте ' , count, ' раз');

end.
Atos
Цитата
if S[i]=ch
Ты пытаешься сравнить один символ строки с целым словом. Это выполнялось бы, только если ch соcтояло бы из одного символа, иначе неверно в любом случае.
Можешь сделать так: if S[i]=ch[1], и если это выполнится, то проверить следующие за i-м символы строки на совпадение с соответствующими символами ch. Попробуй доработать, если не получится - спрашивай, поможем. Хорошо, что уже что-то делал самостоятельно, в отличие от многих заходящих сюда smile.gif
klem4
способ 1 длинный :

Elisei, Как разбить строку на массив слов, все способы береш от туда любой способ, разбиваешь строку на массив слов, ну а дальше все элементарно !

способ 2 короткий :

uses crt;
var
s,sbs : string;

function GetCount(st, subst : string) : byte;
var
count : byte;
begin
count := 0;
while(pos(subst, st) <> 0) do begin
inc(count);
delete(st, pos(subst,st), length(subst));
end;

GetCount := count;
end;

begin

clrscr;

s := 'test testo toster';
sbs := 'st';

writeln('В строке ',s,' слово ',sbs, ' встречается ', GetCount(s,sbs),' раз');
readln
end.


но второй способ всетаки не на вхождение слова в строку а на вхождение группы символов.
what are the side effects of tak
Malegra 100 Sildenafil Citrate
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.