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

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

Генератор случайных чисел... [D7, WinXP]


barakuda ©   (2007-11-01 12:04:00) 

добрый день уважаемые мастера...

вопрос таков...  нужен генератор случайных четырёхзначных чисел

я вот написал.. как мог..:) ...
procedure tform1.recordfile(chto: string);
begin
rec.Lines.LoadFromFile('page.html');
rec.Text:=ReplaceStr(rec.Text,'<text>', chto);
rec.Lines.SaveToFile(inttostr(Random(9))+inttostr(Random(9))+inttostr(Random(9))+inttostr(Random(9))+'.html');
end;


генерирует он шикарно...
НО .. при новом запуске программы...  все числа повторяются один в один
??? Как сделать, что бы числа были абсолютно разные

Заранее благодарен...


Leonid Troyanovsky   (2007-11-01 13:57:00) [1]


> Palladin ©   (01.11.07 13:26) [10]

> IntToStrN(Random(10000));

Format('%4.4d', [Random(10000)])

--
Regards, LVT.


Palladin   (2007-11-01 13:26:00) [2]


> novill   (01.11.07 12:24) [5]

та без проблемм

Function IntToStrN(n:Integer):String;
Begin
Result:=IntToStr(n);
If n<10 Then Result:='000'+Result Else
If n<100 Then Result:='00'+Result Else
If n<1000 Then Result:='0'+Result;
End;

IntToStrN(Random(10000));


barakuda   (2007-11-01 13:06:00) [3]

проблема решилась.... после внимательного прочтения документации


Randomize;
rec.Lines.LoadFromFile('page.html');
rec.Text:=ReplaceStr(rec.Text,'<text>', chto);
rec.Lines.SaveToFile(inttostr(Random(9))+inttostr(Random(9))+inttostr(Random(9))+inttostr(Random(9))+'.html');


Всем спасибо.... особенно novill


barakuda   (2007-11-01 12:59:00) [4]

ничего не помогает

попробывал так... но первое число всегда повторяется... все последующие разные
begin

rec.Lines.LoadFromFile('page.html');
rec.Text:=ReplaceStr(rec.Text,'<text>', chto);
 rec.Lines.SaveToFile(inttostr(Random(9))+inttostr(Random(9))+inttostr(Random(9))+inttostr(Random(9))+'.html');
DecodeTime(now, hours, mins, secs, milliSecs);
RandSeed := milliSecs;

end;


DrPass   (2007-11-01 12:57:00) [5]


> У автора отсутствуют числа содержащие девятки, но присутствуют
> четырехсимвольные последовательности с лидирующими нулями.
> ..

Не важно. Лишь бы автору нравилось

> генерирует он шикарно...


Правильный_Вася   (2007-11-01 12:56:00) [6]


>  были абсолютно разные

абсолютно не будет
могут случайно и повториться


novill   (2007-11-01 12:24:00) [7]

> [3] Palladin ©   (01.11.07 12:13)

У автора отсутствуют числа содержащие девятки, но присутствуют четырехсимвольные последовательности с лидирующими нулями...


Skyle   (2007-11-01 12:21:00) [8]

Всё равно в [0] ошибка, так что лучше воспользоваться тем, что советуют.


Palladin   (2007-11-01 12:13:00) [9]


> inttostr(Random(9))+inttostr(Random(9))+inttostr(Random(9))+inttostr(Random(9))+'.
> html'


IntToStr(Random(9000)+1000)


Eraser   (2007-11-01 12:12:00) [10]

randomrange


novill   (2007-11-01 12:07:00) [11]

Randomize +F1


Наверх

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