Подсчитать количество вхождений заданного слова в строку - Free Pascal

Узнай цену своей работы

Формулировка задачи:

Если вкратце то нужно в эту прогу добавить программу которая выведет сколько раз я ввел конкретное слово в строке.
Листинг программы
  1. program Dz2;
  2. var
  3. //s: string[255 ];
  4. s:array[1..255] of char;
  5. i: integer;
  6. f: boolean;
  7.  
  8. begin
  9. writeln (#144#174#167#224#174#161#173#168#170,' ',#196,' ',#132#166#165#162#171#160#229,' ',#140#46#144#46);
  10. i:=0;
  11. repeat
  12. i:=i+1;
  13. read(s[i]);
  14. until (s[i]='.') or (s[i]=',') or (s[i]='!') or (s[i]='?');
  15. for i:=1 to 255 do
  16. begin
  17. 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
  18. begin
  19. f := true;
  20. break;
  21. end;
  22. end;
  23. 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)
  24. 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);
  25. readln;
  26. readln;
  27. end.

Решение задачи: «Подсчитать количество вхождений заданного слова в строку»

textual
Листинг программы
  1. Function sum(s_in, s_find: string): integer;
  2. Var
  3. C: char;
  4. X, I: integer;
  5. S: string;
  6. Begin
  7. S:= '';
  8. X:= 0;
  9. 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;
  10. Sum:= x;
  11. End;

Объяснение кода листинга программы

  1. В коде определена функция с именем sum, которая принимает два аргумента типа string - s_in и s_find.
  2. Внутри функции объявлены следующие переменные:
    • C типа char
    • X и I типа integer
    • S типа string
  3. Инициализируется переменная S пустой строкой (``).
  4. Инициализируется переменная X значением 0.
  5. В цикле For перебираются символы строки s_in с индексами от 1 до длины строки.
  6. Если текущий символ не равен пробелу (' '), то он добавляется в переменную S.
  7. Если текущий символ равен пробелу (' ') и переменная S не пустая, то проверяется равенство S строке s_find.
  8. Если равенство выполняется, то значение переменной X увеличивается на 1.
  9. После завершения цикла, значение переменной X возвращается из функции как результат.
  10. Значения переменных S и X не используются вне функции.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

9   голосов , оценка 4 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы