Советы по Delphi

         

Огромное Вам спасибо за сбор


Заполнения массива случаными неповторяющимися значениями Письмо от читателя...

Здравствуйте, Валентин. Огромное Вам спасибо за сбор и систематизацию советов по Delphi. Предлагаю Вам интересное решение заполнения массива случаными неповторяющимися значениями. Думаю этот алгоритм небесполезен.

    type arr= array [1..255] of integer;

procedure FillArray(var A: arr; n: integer);
var i: integer;
s: string; q: byte; begin
randomize; s:=''; for i:=1 to n do begin q:=random(i); insert(chr(i),s, q); end; for i:=1 to n do begin A[i]:=ord(s[i]); end; end;
С уважением Дедок Василий.
e-mail: dedokv@mail.ru

He вступая в дискуссию, цитирую следующее письмо:

Заполнять ЦЕЛОЧИСЛЕННЫЙ массив, используя строки -- ЭТО ПОШЛО!

Приведу стандартную процедуру, работает в шесть раз быстрее, не имеет ограничений, да и кода поменьше :)

    procedure FillArray(var A: array of Integer);
var
I, S, R: Integer; begin
for
I := 0 to High(A) do A[I] := I; for i := High(A) downto 0 do begin R := Random(I); S := A[R]; A[R] := A[I]; A[I] := S; end; end;
С уважением, Иваненко Фёдор Григорьевич.

e-mail: theodor_iv@mail.ru [000300]


Содержание  Назад  Вперед







Forekc.ru
Рефераты, дипломы, курсовые, выпускные и квалификационные работы, диссертации, учебники, учебные пособия, лекции, методические пособия и рекомендации, программы и курсы обучения, публикации из профильных изданий