Форум: "Основная";
Текущий архив: 2005.02.27;
Скачать: [xml.tar.bz2];
ВнизПерестановка строк Найти похожие ветки
← →
DolQ (2005-02-08 21:24) [0]Подскажите как решить такую задачу:
Есть Memo1 в нем идут n строк (небольшое, приблизительно до 10) между которыми пустые строки. Как мне лучше всего поменять их местами в случайном порядке?
← →
Johnmen © (2005-02-08 23:08) [1]Randomize, Random, TStrings, Lines[i] и т.д. и т.п.
← →
Юрий (2005-02-09 19:01) [2]...
Randomize;
Begin
For I:= 1 to 10 do
Begin
TmpIndex:= Random(10)+1;
TmpSt:=Memo1.Lines.Strings[TmpIndex];
Memo1.Lines.Strings[TmpIndex]:=Memo1.Lines.Strings[I];
Memo1.Lines.Strings[I]:=TmpSt;
End;
End;
...
← →
begin...end © (2005-02-09 19:05) [3]> Юрий (09.02.05 19:01) [2]
> TmpSt:=Memo1.Lines.Strings[TmpIndex];
> Memo1.Lines.Strings[TmpIndex]:=Memo1.Lines.Strings[I];
> Memo1.Lines.Strings[I]:=TmpSt;
Memo1.Lines.Exchange(TmpIndex, I)
← →
Jeer © (2005-02-09 19:12) [4]Юрий (09.02.05 19:01) [2]
>For I:= 1 to 10 do
После этого "случайного" порядка не будет, а будет приближение к нему.
Для улучшения случайности рекомендую увеличить интервал перемешивания на пару порядков::)
← →
DolQ (2005-02-09 20:59) [5]Спасибо за помощь!
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2005.02.27;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.059 c