Форум программистов, компьютерный форум, киберфорум
Turbo Pascal
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.89/9: Рейтинг темы: голосов - 9, средняя оценка - 4.89
0 / 0 / 0
Регистрация: 13.11.2019
Сообщений: 7
1

Заменить цепочки одинаковых символов, на цепочку, содержащую специальный знак, символ и количество повторений

23.01.2020, 11:57. Просмотров 1716. Ответов 2
Метки нет (Все метки)

Пожалуйста помогите решить эту задачку на паскале
Дан текст не более 255 символов. Заменить цепочки, содержащие не менее 4 одинаковых символов, на цепочку, содержащую специальный знак, символ и количество повторений.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
23.01.2020, 11:57
Ответы с готовыми решениями:

Заменить в строке все слоги “we” на специальный символ “&”
Дана строка символов до точки. Заменить в строке все слоги “we” на специальный символ “&”.

Заменить в файле каждую последовательность заданных одинаковых символов на один такой символ
Здравствуйте! Помогите поправить код! Заменить в файле каждую последовательность заданных...

Даны две цепочки символов. Вставить вторую цепочку в первую после третьего символа
Программисты,требуется ваша помощь.Помогите решить задачи Тема:строковые данные:описание,обработка...

В строке заменить последовательность повторяющихся символов на количество его повторений
Помогите, пожалуйста, написать код, я плохо понимаю, что от меня хотят в задаче. Задание:...

2
Модератор
6657 / 3236 / 1305
Регистрация: 01.02.2015
Сообщений: 10,282
Записей в блоге: 1
23.01.2020, 20:41 2
Лучший ответ Сообщение было отмечено mara_ как решение

Решение

Если это на Pascal - я перенесу тему в раздел Pascal.

Переносить?

Добавлено через 24 минуты
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
program rle;
 
const
  SpecialChar = '#';
 
  function IntToStr(N: integer): string;
  var
    s: string;
  begin
    Str(N, s);
    IntToStr := s;
  end;
 
var
  s: string;
  NewString: string;
  PrevChar: char;
  Count: integer;
  i, j: integer;
begin
  s := 'asdfggggvvvvvbbbbbbbnnnmkkkk';
 
  NewString := '';
  PrevChar := s[1];
  Count := 1;
  for i := 2 to length(s) do
  begin
    if PrevChar = s[i] then
      Inc(Count);
    if (PrevChar <> s[i]) or (i = length(s)) then
    begin
      if Count >= 4 then
        NewString := NewString + SpecialChar + PrevChar + IntToStr(Count)
      else
        for j := 1 to Count do
          NewString := NewString + PrevChar;
      PrevChar := s[i];
      Count := 1;
    end
  end;
  writeln(s);
  writeln(NewString);
end.
0
Модератор
6657 / 3236 / 1305
Регистрация: 01.02.2015
Сообщений: 10,282
Записей в блоге: 1
24.01.2020, 07:26 3
Лучший ответ Сообщение было отмечено mara_ как решение

Решение

Для корректной работы со строкой длины 1 нужно заменить строки
Pascal
25
26
  Count := 0;
  for i := 1 to length(s) do
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
24.01.2020, 07:26

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

Создать динамическую цепочку символов, содержащую текст без разделения на строки
Задание по лабораторной: Создать динамическую цепочку символов, содержащую текст без разделения на...

Создать динамическую цепочку символов, содержащую текст без разделения на строки
7. Создать динамическую цепочку символов, содержащую текст без разделения на строки. Текст вводится...

Подсчитать количество символов 2 и заменить их на символ 5
нужно взять строку из файла, вычислить его длину. и каждый символ 2 заменить на символ 5 и...

Заменить каждый символ «точка» в строке на символ «вопросительный знак»
Общая инструкция. В программе необходимо определить динамическую длину строки и вывести это...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2020, vBulletin Solutions, Inc.