| Код | procedure GetRandomList(N, a, b: Integer; var randList: TStringList); var x, i: Integer; begin // Получаем N уникальных случайных чисел от A до B
// Если чисел требуется больше, чем есть на интервале - сообщим if (b - a < N) then begin ShowMessage('Невозможно выполнить операцию!'); Exit; end;
randomize; for i := 1 to N do begin repeat x := a + random(b -a + 1); until (randList.IndexOf(IntToStr(x)) = -1); randList.Add(IntToStr(x)); end; end;
procedure TForm1.Button1Click(Sender: TObject); var randList: TStringList; begin randList := TStringList.Create; GetRandomList(30, -15, 15, randList); ListBox1.Items.Assign(randList); randList.Free; end;
|
|