Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Алгоритм заполнения массива


cfytr ©   (2004-11-13 18:01:00) 

Нужно заполнить массив размерности, ни допустим, 15 СЛУЧАЙНЫМИ (от 0 до 50), НЕПОВТОРЯЮЩИМИСЯ числами. Как?


begin...end   (2004-11-13 20:34:00) [1]

Mihey_temporary ©   (13.11.04 18:23) [2]

Перед использованием Random желательно вызывать Randomize.


cfytr   (2004-11-13 20:00:00) [2]

Anatoly Podgoretsky © ну это мысль, спасибо


cfytr   (2004-11-13 20:00:00) [3]

Anatoly Podgoretsky ©  это мысль, спасибо


cfytr   (2004-11-13 19:56:00) [4]

Mihey_temporary © нет всегда разные просто randomize не поставил
Anatoly Podgoretsky © строками нельзя

дан массив,
a :array[1..5] of integer;
(это и называется размерность 5)
надо его заполнить случайными, неповторяющимися числами,
чтобы на выходе было, например так:

a[1] = 15    или так:  a[1] = 8
a[2] = 22              a[2] = 5
a[3] = 1               a[3] = 9
a[4] = 43              a[4] = 0
a[5] = 16              a[5] = 11

ps: НЕ надо описывать то место алгоритма, где это все выводится на экран, только заполнение


Anatoly Podgoretsky   (2004-11-13 19:49:00) [5]

Заполни StringList строками от 0 до 50 и выбирай с удалением в цикле от 1 до 15.


cfytr   (2004-11-13 19:35:00) [6]

Mihey_temporary ©
не твоя программа выдает сегда одно и тоже


Mihey_temporary   (2004-11-13 18:23:00) [7]

Одномерный массив:


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;


Копай оттуда.


YurikGL   (2004-11-13 18:04:00) [8]

Точно так же, как и одномерный массив


Наверх

Титульная страница Поиск, карта сайта Написать письмо