Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.04.23;
Скачать: CL | DM;

Вниз

Строки   Найти похожие ветки 

 
коробас ©   (2006-03-28 18:36) [0]

Задача
Составить программу, позволяющую производить корректировку программы пользователя путем замены последовательности, состоящей из n1 символов, на последовательность, состоящую из n2 символов. Программа вводится в память машины и размещается в символьном массиве. Пользователь вводит две последовательности, состоящие из n1 и n2 символов, в ответ на запрос: 1) «введите символы, которые следует заменить»; 2) «введите символы, на которые следует заменить». Программа просматривается пооператорно. Оператор, содержащий заменяемую последовательность символов, выводится на экран. Так как в операторе может быть несколько таких последовательностей, то необходимо ввести дополнительно номер позиции, начиная с которой осуществляется замена. После этого, если n1> n2, то осуществляется замена n1 на n2 + k символов, где k — число пробелов, равное n1 - n2.. После корректировки следует осуществить сдвиг оставшихся символов оператора на k позиций влево. Если n1< n2, то осуществляется сдвиг вправо символов, начиная с указанной позиции, на n2 - n1 позиций, а затем замена n2 символов. После этого осуществляется просмотр следующих операторов. Процесс корректировки следует прекратить по достижении оператора END и вывести на экран всю программу.
Вопрос:
Куда мне всунуть в программе :номер позиции, начиная с которой осуществляется замена!(Задача в Delphi7)


 
Kolan ©   (2006-03-28 19:42) [1]

Сократи вопро, чтобы его можно было понять не напрягаясь и с примерами кода..... итд.


 
коробас ©   (2006-04-01 20:43) [2]

Короче, мне нужно ввести текст и заменить одну букву(слово) на другое во всем тексте.
Как мне сделать так, чтобы буква(слово) менялось в тексте с третьего(n-го) раза.
Вот сама программа:
var a,b,c,e,d:String;
   i,j,k,l:Integer;
begin
d:="";
a:=Memo1.Text;
b:=Edit1.Text;
c:=Edit2.Text;
l:=StrToInt(Edit3.Text);
i:=length(b);
j:=length(c);
k:=pos(b,a);
while k>0 do begin
k:=k+length(d);
a:=d+a;
delete(a,k,i);
insert(c,a,k);
k:=pos(b,a);
end;
e:=a;
Memo2.Text:=e;
end;


 
Kolan ©   (2006-04-01 21:12) [3]

чтобы буква(слово) менялось в тексте с третьего(n-го) раза.
С третьей попытки что ли? Или третье по счёту.

Если второе, то смотри PosEx.


 
Anatoly Podgoretsky ©   (2006-04-01 23:37) [4]

Завести счетчик и отказываться менять, пока три раза не введет одно и тоже, а можно просто три поля для ввода, но это не совсем с третьего раза.


 
коробас ©   (2006-04-08 08:54) [5]

Kolan вот идет например такой ряд:"Но ох скоро ...", мне нужно заменить букву "o" с третьего(n-го) повтора и до конца.



Страницы: 1 вся ветка

Текущий архив: 2006.04.23;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.04 c
15-1143781960
Ega23
2006-03-31 09:12
2006.04.23
С Днём рождения! 31 марта


15-1144042450
Ega23
2006-04-03 09:34
2006.04.23
С Днём рождения! 2 апреля


1-1142156181
TStas
2006-03-12 12:36
2006.04.23
КАк программно распаковать папку?


2-1144434465
Nick_serov
2006-04-07 22:27
2006.04.23
Опять же вопрос по Grid у... (больше не буду.....наверно =))


3-1141225115
Hadroran
2006-03-01 17:58
2006.04.23
Коннект к базе IB