{ **** UBPFD *********** by delphibase.endimus.com ****
>> Подсчёт количества вхождений символа в строке
Функцийка считает количество повторений
символа заданного InputSubStr в строке InputStr.
Зависимости: Стандартные модули
Автор: Ru, DiVo_Ru@rambler.ru, Одесса (Украина)
Copyright: DiVo 2003 creator Ru
Дата: 18 ноября 2003 г.
***************************************************** }function CntChRepet(InputStr: string; InputSubStr: char): integer;
var
i: integer;
begin
result := 0;
for i := 1 to length(InputStr) doif InputStr[i] = InputSubStr then
inc(result);
end;
InputSubStr: одиночный символ, количество которых нужно посчитать
Функция возвращает целочисленное значение, представляющее количество вхождений.
Декларация переменной
vari:целое;
singl variable i is declared as an integer, which will be used as an index in the string iteration.
Тело функции
beginresult:=0;// Инициализируем счетчик в 0fori:=1tolength(InputStr)do// Перебираем каждый символ в InputStrifInputStr[i]=InputSubStrthen// Проверяем, если текущий символ соответствует InputSubStrinc(result);// Увеличиваем счетчик, если это совпадениеend;
В теле функции происходит следующее:
1. Переменная result инициализируется в 0, которая будет хранить окончательное количество вхождений.
2. Цикл перебирает каждый символ в InputStr, начиная с индекса 1 (поскольку Delphi использует 1-основанную индексацию).
3. Для каждого символа проверяется, если он соответствует входному символу InputSubStr. Если это так, переменная result увеличивается с помощью функции inc().
4. Цикл продолжается, пока не будут обработаны все символы в InputStr.
Пример использования
varstr:строка;char:символ;beginstr:='Hello World';char:='o';Result:=CntChRepet(str,char);// Подсчитываем количество вхождений символа 'o' в строке 'Hello World'writeln(Result);// Вывод: 2end.
В этом примере функция вернет 2, указывая, что символ 'o' появляется два раза в строке 'Hello World'.
В статье описана функция на языке Delphi, которая подсчитывает количество повторений заданного символа в строке.
Комментарии и вопросы
Получайте свежие новости и обновления по Object Pascal, Delphi и Lazarus прямо в свой смартфон. Подпишитесь на наш Telegram-канал delphi_kansoftware и будьте в курсе последних тенденций в разработке под Linux, Windows, Android и iOS