
16.06.2010, 14:10
|
|
Новичок
Регистрация: 17.09.2009
Сообщений: 18
С нами:
8762073
Репутация:
11
|
|
Не, вы наверно меня не поняли. Динамические массивы тут не при чем.
Вот, например, чтобы вывести то, что мне нужно для 123 я использую код:
Код:
procedure reflex3(myfz:string);
var k, i:integer;
temp:string;
begin
for i := 1 to 2 do
for k := 1 to Length(myfz) do
begin
temp:=myfz;
delete(temp, k, i);
Writeln(temp);
end;
for k := 1 to Length(myfz) do writeln(myfz[k]); end;
Для того, чтобы вывести для 1234 нужен уже другой код, а мне нужна универсальность. Вот и спрашиваю как сделать, чтоб код не зависел от количества элементов =)
Сделал так:
Это чтоб не повторялись:
Код:
var
st:tstringlist;
....
st:=TStringList.Create;
st.Sorted:=true;
st.Duplicates:=dupIgnore;
Код:
procedure newrewlex(f:string);
var i,k:integer;
temp:string;
begin
if Length(f)=1 then exit;
for k := 1 to Length(f) do
begin
temp:=f;
delete(temp, k, 1);
st.Add(temp);
newrewlex(temp);
end;
end;
Последний раз редактировалось Скотти; 16.06.2010 в 14:38..
|
|
|