Форум программистов, компьютерный форум, киберфорум
Наши страницы
Pascal (Паскаль)
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.75/4: Рейтинг темы: голосов - 4, средняя оценка - 4.75
Аселя
0 / 0 / 0
Регистрация: 27.06.2010
Сообщений: 16
1

Заменить любое сочетания символов на любое другое сочетания символов

09.09.2010, 18:06. Просмотров 667. Ответов 3
Метки нет (Все метки)

Для меня капец.... кто может ....помогите! Плиз... Составить программу которая из введенного предложения заменяет любое сочетания символов на любое другое сочетания символов.
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
09.09.2010, 18:06
Ответы с готовыми решениями:

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

Введите с клавиатуры любое слово.Определите в нем число символов.Сколько раз в этом слове встречается буква А?
:cry:Помогите, пожалуйста:cry: Введите с клавиатуры любое слово.Определите в...

Строки. В заданной строке заменить все сочетания подстроки 'на' на подстроку 'над'.
1. В заданной строке заменить все сочетания подстроки 'на' на подстроку 'над'....

В строке любое количество подряд идущих пробелов заменить одним пробелом
2. В строке любое количество подряд идущих пробелов заменить одним пробелом. ...

Сочетания с буквами алфавита
Написать программу которая аффиширует сочетания букв алфавита. Например, если...

3
Tronix
157 / 104 / 6
Регистрация: 22.08.2010
Сообщений: 215
09.09.2010, 18:29 2
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
Var
      S      : String;
      SubStr : String;
      RepStr : String;
      PosIdx : Byte;
      
Begin
      Write('Enter string        : ');
      ReadLn(S);
      Write('Enter substring     : ');
      ReadLn(SubStr);
      Write('Enter replace string: ');
      ReadLn(RepStr);
      while Pos(SubStr,S) <> 0 do
         begin
            PosIdx := Pos(SubStr,S);
            Delete(S,PosIdx,Length(SubStr));
            Insert(RepStr,S,PosIdx);
         end;
      WriteLn('Output string     : ',S);
      Readln;
End.
1
Аселя
0 / 0 / 0
Регистрация: 27.06.2010
Сообщений: 16
09.09.2010, 19:42  [ТС] 3
Цитата Сообщение от Tronix Посмотреть сообщение
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
Var
      S      : String;
      SubStr : String;
      RepStr : String;
      PosIdx : Byte;
      
Begin
      Write('Enter string        : ');
      ReadLn(S);
      Write('Enter substring     : ');
      ReadLn(SubStr);
      Write('Enter replace string: ');
      ReadLn(RepStr);
      while Pos(SubStr,S) <> 0 do
         begin
            PosIdx := Pos(SubStr,S);
            Delete(S,PosIdx,Length(SubStr));
            Insert(RepStr,S,PosIdx);
         end;
      WriteLn('Output string     : ',S);
      Readln;
End.


чет тяжко...

Добавлено через 5 минут
Зацикливается...
0
Tronix
157 / 104 / 6
Регистрация: 22.08.2010
Сообщений: 215
09.09.2010, 22:37 4
А кстати да, происходит зацикливание когда например точку '.' попытаться заменить тремя точками '...'.
Так как вставка происходит в той же строке и есть цикл поиска точки то строка разрастается до максимуму из одних точек и из цикла while выйдти не может по условию, так как точки только прибавляются.

Вот тогда такой вариант:

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
Var
      S,SS   : String;
      SubStr : String;
      RepStr : String;
      i,j    : Byte;
      match  : boolean;
Begin
      Write('Enter string        : ');
      ReadLn(S);
      Write('Enter substring     : ');
      ReadLn(SubStr);
      Write('Enter replace string: ');
      ReadLn(RepStr);
      SS := '';
      For i := 1 to Length(S) do
        begin
           match := true;
           For j := 1 to Length(SubStr) do
             If S[i+j-1] <> SubStr[j] then
               begin
                 match := false;
                 break;
               end;
           if match then 
             SS := SS + RepStr
           else
             SS := SS + S[i];
        end;
      WriteLn('Output string     : ',SS);
      Readln;
End.
1
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
09.09.2010, 22:37

Сочетания цикла и разветвления
Даны натуральное число n, действительные числа а1,.....,аn. Получить...

Сочетания цикла и разветвления
даны натуральные числа n, а1,......,an. Определить количество членов a(k)...

Сочетания из элементов заданного множества
Дан текстовый файл со строкой, представляющей набор слов из букв и цифр....


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

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

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