Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 05.07.2008, 18:08   #1
woo
 
Регистрация: 05.07.2008
Сообщений: 4
По умолчанию нерандомный рандом

нужно генерить 4рех значные числа, в которых не должно быть повторяющихся цифр.

Код:
procedure TForm1.Button1Click(Sender: TObject);
var
i:shortint;
begin
i:=0;

a:=random(10);

while i=0 do
begin
b:=random(10);
if b <> a then i:=1;
end;

i:=0;

while i=0 do
begin
c:=random(10);
if (c <> a) and (c <> b) then i:=1;
end;

i:=0;

while i=0 do
begin
d:=random(10);
if (d <> a) and (d <> b) and (d <> c) then i:=1;
end;

memo1.lines.append(
inttostr(a) +
inttostr(b) +
inttostr(c) +
inttostr(d)
);

end;
запускаю прогу, тыкаю несколько раз на кнопку и получаю всегда одинаковую последовательность:
0826
3140
4082
9376
8731
3428
2418
2794
8015
0576

как сделать рандом более рандомным?
woo вне форума Ответить с цитированием
Старый 05.07.2008, 18:20   #2
Карась
Участник клуба
 
Аватар для Карась
 
Регистрация: 26.10.2007
Сообщений: 1,244
По умолчанию

Написать Randomize;

Код:
procedure TForm1.Button1Click(Sender: TObject);   
var  
i:shortint;   
begin  
i:=0;   
Randomize; 
a:=random(10);   
  
while i=0 do  
begin  
b:=random(10); 

.........
Умом Россию не понять, пока не выпито ноль пять,
А если выпито ноль пять всё делом кажется не хитрым,
Попытка глубже понимать уже попахивает литром...
Карась вне форума Ответить с цитированием
Старый 05.07.2008, 20:08   #3
_Engine_
Форумчанин
 
Регистрация: 29.06.2008
Сообщений: 603
По умолчанию

Добавлю свои пять копеек.
Можно еще менять значение RandSeed.
_Engine_ вне форума Ответить с цитированием
Старый 05.07.2008, 21:12   #4
woo
 
Регистрация: 05.07.2008
Сообщений: 4
По умолчанию

Спасибо, с Randomize; работает.
woo вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Графика, время, рандом (на С\С++) 1122 Помощь студентам 5 25.05.2008 20:44
рандом benjaminfran Помощь студентам 3 14.02.2008 23:53
Рандом символов Xandr Общие вопросы Delphi 8 25.10.2007 16:50