Цитата:
Сообщение от Зюня,0
Проблема в 3 задачи мне преподаватель сказал в том что когда ввожу строку к примеру (12345 568123 123) программа за место того чтобы вывести что слово (123) встречается только 1 раз выводит что оно встречается 3 раза тоесть получается как то надо что то добавить а я не понимаю)))
|
Ну что же, попробуйте так:
Код:
var
a,b:string;
k,i:integer;
S:Set of Char;
begin
S:=['A'..'Z']+['a'..'z']+['А'..'Я']+['а'..'я']+['0'..'9'];
write('text: ');
readln(a);
write('slovo: ');
readln(b);
k:=0;
while pos(b,a)>0 do
begin
if ((pos(b,a)=1) and not (a[pos(b,a)+Length(b)+1] in S)) or
(not (a[pos(b,a)-1] in S) and not (a[pos(b,a)+Length(b)] in S)) or
(not (a[pos(b,a)-1] in S) and (pos(b,a)+Length(b)-1=Length(a))) then k:=k+1;
delete(a, pos(b,a), length(b));
end;
writeln(k);
readln;
end.