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

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

Рэндом число из массива


sexy ©   (2004-09-27 21:24:00) 

Имеется массив целых, некоторые элементы = 0. Подскажите алг, как взять случайный элемент массива, чтоб не трогать эти нули. т.е. любой но чтоб не был  = 0.


tormoz   (2004-09-27 21:37:00) [1]

function TForm1.get():integer; //a:array[] of integer объявлен заранее
var i,j: integer;
   b: array of integer;
begin
j:=1;
for i:=1 to length(a) do
 begin
  if a[i]<>0 then
   begin
    b[j]:=i;
    j:=j+1;
   end;
 end;
result:=a[b[random(j)+1]];
end;


Vit@ly   (2004-09-27 21:34:00) [2]

Randomize
If X[Random(N)] <> 0 then
begin
  ...
end
                    else;


Наверх

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