Подсчитать количество вхождений заданного слова в строку - Free Pascal
Формулировка задачи:
Если вкратце то нужно в эту прогу добавить программу которая выведет сколько раз я ввел конкретное слово в строке.
program Dz2; var //s: string[255 ]; s:array[1..255] of char; i: integer; f: boolean; begin writeln (#144#174#167#224#174#161#173#168#170,' ',#196,' ',#132#166#165#162#171#160#229,' ',#140#46#144#46); i:=0; repeat i:=i+1; read(s[i]); until (s[i]='.') or (s[i]=',') or (s[i]='!') or (s[i]='?'); for i:=1 to 255 do begin if (s[i] = #175) and (s[i + 1] = #224) and (s[i+2] = #174) and (s[i + 3] = #163) and (s[i + 4] = #224) and (s[i + 5] = #160) and (s[i + 6] = #172) and (s[i + 7] = #160) then begin f := true; break; end; end; if f then writeln(#10#13#147#32#162#162#165#164#165#173#174#172#227#32#224#165#231#165#173#173#105#32#243#32#225#171#174#162#174#32#34#175#224#174#163#224#160#172#160#34#46) else writeln(#10#13#147#32#162#162#165#164#165#173#174#172#227#32#224#165#231#165#173#173#105#32#173#165#172#160#243#32#225#171#174#162#160#32#34#175#224#174#163#224#160#172#160#34#46); readln; readln; end.
Решение задачи: «Подсчитать количество вхождений заданного слова в строку»
textual
Листинг программы
Function sum(s_in, s_find: string): integer; Var C: char; X, I: integer; S: string; Begin S:= ''; X:= 0; For I:= 1 to length s_in do if s_in[i]<> ' ' then s:= s+ s_in[i] else begin s:= ''; if s = s_find then inc(x); end; Sum:= x; End;
Объяснение кода листинга программы
- В коде определена функция с именем
sum
, которая принимает два аргумента типаstring
-s_in
иs_find
. - Внутри функции объявлены следующие переменные:
C
типаchar
X
иI
типаinteger
S
типаstring
- Инициализируется переменная
S
пустой строкой (``). - Инициализируется переменная
X
значением 0. - В цикле
For
перебираются символы строкиs_in
с индексами от 1 до длины строки. - Если текущий символ не равен пробелу (' '), то он добавляется в переменную
S
. - Если текущий символ равен пробелу (' ') и переменная
S
не пустая, то проверяется равенствоS
строкеs_find
. - Если равенство выполняется, то значение переменной
X
увеличивается на 1. - После завершения цикла, значение переменной
X
возвращается из функции как результат. - Значения переменных
S
иX
не используются вне функции.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д