ANTICHAT — форум по информационной безопасности, OSINT и технологиям
ANTICHAT — русскоязычное сообщество по безопасности, OSINT и программированию.
Форум ранее работал на доменах antichat.ru, antichat.com и antichat.club,
и теперь снова доступен на новом адресе —
forum.antichat.xyz.
Форум восстановлен и продолжает развитие: доступны архивные темы, добавляются новые обсуждения и материалы.
⚠️ Старые аккаунты восстановить невозможно — необходимо зарегистрироваться заново.

16.06.2010, 14:10
|
|
Новичок
Регистрация: 17.09.2009
Сообщений: 18
Провел на форуме: 884969
Репутация:
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..
|
|
|
|
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|