
Посчитать сколько раз в текстовой строке S встретится подстрока S1. Разрешается завести только одну
дополнительную строковую переменную. Pascal.

Ответы на вопрос

k,l,p:integer;
begin
writeln('Введите строку:');
readln(s);
writeln('Введите подстроку:');
readln(s1);
l:=length(s1);
s2:=s;
k:=0;
p:=pos(s1,s2);
while p>0 do
begin
k:=k+1;
delete(s2,p,l);
p:=pos(s1,s2);
end;
writeln('k = ',k);
end.
Пример:
Введите строку:
сколько раз в текстовой строке S встретится подстрока S1
Введите подстроку:
ст
k = 4



Для подсчета количества вхождений подстроки S1 в текстовой строке S в языке Pascal можно использовать следующий код:
```pascal function CountSubstringOccurrences(S, S1: string): Integer; var Count: Integer; Index: Integer; begin Count := 0; Index := Pos(S1, S); while Index > 0 do begin Inc(Count); Index := PosEx(S1, S, Index + Length(S1)); end; Result := Count; end; ```
В этом коде используется функция `Pos`, которая возвращает позицию первого вхождения подстроки S1 в строке S. Затем с помощью цикла `while` и функции `PosEx` мы продолжаем поиск следующих вхождений, начиная с позиции, следующей сразу после найденного вхождения. Каждый раз, когда находим вхождение, увеличиваем счетчик `Count`. В конце возвращаем значение `Count`, которое будет содержать количество вхождений подстроки S1 в строке S.
Пример использования функции:
```pascal var S, S1: string; Occurrences: Integer; begin S := 'This is a test string. Test is a keyword.'; S1 := 'test'; Occurrences := CountSubstringOccurrences(S, S1); writeln('Number of occurrences: ', Occurrences); end. ```
В данном примере мы ищем подстроку 'test' в строке 'This is a test string. Test is a keyword.' и выводим количество вхождений подстроки.
Примечание: Пожалуйста, обратите внимание, что код предоставлен на основе предоставленной информации и может потребовать дополнительной настройки или изменений в зависимости от конкретных требований вашей программы.


Топ вопросов за вчера в категории Информатика








Последние заданные вопросы в категории Информатика
-
Математика
-
Литература
-
Алгебра
-
Русский язык
-
Геометрия
-
Английский язык
-
Химия
-
Физика
-
Биология
-
Другие предметы
-
История
-
Обществознание
-
Окружающий мир
-
География
-
Українська мова
-
Информатика
-
Українська література
-
Қазақ тiлi
-
Экономика
-
Музыка
-
Право
-
Беларуская мова
-
Французский язык
-
Немецкий язык
-
МХК
-
ОБЖ
-
Психология
-
Физкультура и спорт
-
Астрономия
-
Кыргыз тили
-
Оʻzbek tili