Var s,s1:string; i,n,n1,k,p:integer; begin Write('Введите строку: '); Readln(s); n:=Length(s); Write('Введите подстроку: '); Readln(s1); n1:=Length(s1); k:=0; i:=1; while i<=n-n1+1 do begin p:=pos(s1,s,i); if p>0 then begin Inc(k); i:=p+n1 end else i:=n; { для выхода } end; Writeln(s1,' встречается в ',s,' ',k,' раз(а)') end.
Пример Введите строку: Наша Таня громко плачет: уронила в речку мячик Введите подстроку: ро ро встречается в Наша Таня громко плачет: уронила в речку мячик 2 раз(а)
s,s1:string;
i,n,n1,k,p:integer;
begin
Write('Введите строку: '); Readln(s); n:=Length(s);
Write('Введите подстроку: '); Readln(s1); n1:=Length(s1);
k:=0; i:=1;
while i<=n-n1+1 do begin
p:=pos(s1,s,i);
if p>0 then begin Inc(k); i:=p+n1 end
else i:=n; { для выхода }
end;
Writeln(s1,' встречается в ',s,' ',k,' раз(а)')
end.
Пример
Введите строку: Наша Таня громко плачет: уронила в речку мячик
Введите подстроку: ро
ро встречается в Наша Таня громко плачет: уронила в речку мячик 2 раз(а)
0 0 0 0 0 0 0 0
0 0 1 1 0 0 0 0
0 1 0 1 0 0 0 0
0 1 1 1 1 0 1 1
1 0 0 0 0 0 1 1
1 0 1 1 0 1 1 1
1 1 0 1 0 1 1 1
1 1 1 1 1 1 1 1