Найти число таких групп, которые начинаются и заканчиваются одной и той же буквой - Pascal

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

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

Дан текст, хранящийся в текстовом файле f, каждый символ которого может быть малой буквой, цифрой или одним из знаков ‘+’, ‘-‘, ‘*’. Группой букв будем называть такую совокупность последовательно расположенных букв, которой непосредственно не предшествует и за которой непосредственно не следует буква. Аналогично определяется группа цифр и группа знаков. Найти число таких групп, которые начинаются и заканчиваются одной и той же буквой. Все эти группы вывести в новый файл g Помогите пожалуйста.
upp

Решение задачи: «Найти число таких групп, которые начинаются и заканчиваются одной и той же буквой»

textual
Листинг программы
  1. const m = ['a'..'z'];
  2.  
  3. var f, g: text;
  4.     i, n: integer;
  5.     s, t: string;
  6.  
  7. begin
  8.   assign(f, 'f.txt');
  9.   reset(f);
  10.   assign(g, 'g.txt');
  11.   rewrite(g);
  12.   n := 0;
  13.   t := '';
  14.   while not eof(f) do
  15.     begin
  16.       readln(f, s);
  17.       s := s + ' ';
  18.       for i := 1 to length(s) do
  19.         if s[i] in m
  20.           then t := t + s[i]
  21.           else begin
  22.             if (length(t) > 0) and (t[1] = t[length(t)])
  23.               then begin
  24.                 inc(n);
  25.                 writeln(g, t)
  26.               end;
  27.             t := ''
  28.           end
  29.     end;
  30.   close(f);
  31.   close(g);
  32.   write('Число групп, начинающихся и заканчивающихся одной и той же буквой: ', n);
  33.   readln
  34. end.

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

  1. В первой строке объявляются переменные m, f, g, i, n, s, t, которые будут использоваться в коде.
  2. В строке 11 задается имя файла для чтения и записи - 'f.txt'.
  3. Строка 12 задает имя файла для записи - 'g.txt'.
  4. Строки 13-14 считывают файл 'f.txt' до конца (до достижения конца файла).
  5. Строка 15 считывает одну строку из файла 'f.txt' и добавляет ее к переменной s.
  6. Строка 17 проверяет, содержит ли текущая строка s хотя бы одну букву из диапазона m.
  7. Если текущая строка s содержит хотя бы одну букву из m, то эта буква добавляется к переменной t.
  8. Если длина переменной t больше 0 и первая буква t равна последней (то есть t[1] = t[length(t)]), то увеличивается значение переменной n и записывается текущая строка t в файл 'g.txt'.
  9. После окончания чтения файла 'f.txt' и записи в файл 'g.txt' выполняется закрытие обоих файлов.
  10. Выводится сообщение 'Число групп, начинающихся и заканчивающихся одной и той же буквой: ' и значение переменной n.
  11. Запрашивается ввод с клавиатуры.

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


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

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

7   голосов , оценка 4.429 из 5

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

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

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