![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
У меня не хватает идей
Fors © (2003-01-11 19:34:00)Мастера помогите разобраться с задачей.
Написать аналог процедуры Insert. Процедурой Delete и функцией Copy не пользоваться.В первой строке входа дана подстрока, которая вставляется, во второй строке входа строка, куда вставляется и в третьей строке входа позиция, начиная с которой подстрока будет входить в строку. У меня не хватает идей. Пока пришел к этому
var S,Substr,Str:string;
i:integer;
begin
ReadLn(Substr);
ReadLn(Str);
S:=Substr+Str;
WriteLn(S);
ReadLn
.......
end.
Fors (2003-01-11 21:43:00) [1]Я извиняюсь но как мне это сдалать, я начинающии и еще не совсем понимаю
TTCustomDelphiMaster (2003-01-11 21:39:00) [2]Я же говорю проверки добавь
и введи Position = 3
Fors (2003-01-11 20:40:00) [3]var i,Position:integer;
Str,SubStr,Result:string;
begin
ReadLn(SubStr);
ReadLn(Str);
ReadLn(Position);
SetLength(Result, Length(Str) + Length(SubStr));
for i := 1 to Position do
Result[i] := Str[i];
for i := 1 to Length(SubStr) do
Result[i + Position] := SubStr[i];
for i := Position to Length(Str) do
Result[i + Length(SubStr)] := Str[i];
WriteLn(Result);
ReadLn
end.
Вроде так оно и есть, но когда я ввожу
SubStr loи
Str helи
Position 4, чтобы получить слово hello
ответ он выдает такой hel l
TTCustomDelphiMaster (2003-01-11 19:50:00) [4]Примерно так.
function insert(Str, SubStr: string; Position: Integer): String;
var
i: Integer;
begin
SetLength(Result, Length(Srt) + Length(SubStr));
for i := 1 to Position do
Result[i] := Str[i];
for i := 1 to Length(SubStr) do
Result[i + Position] := SubStr[i];
for i := Position to Length(Str) do
Result[i + Length(SubStr)] := Str[i];
end;
Добавь проверки.