Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.02.05;
Скачать: CL | DM;

Вниз

Генератор случайных букв :)   Найти похожие ветки 

 
BiggieSmalls   (2006-01-08 12:33) [0]

Есть-ли в Делфи, стандартный генератор случайных символов, наподобии функции Random, но для букв. Или только ручками писать надо?


 
Fay ©   (2006-01-08 12:47) [1]

2 BiggieSmalls   (08.01.06 12:33)
ручками - только массив интересующих символов.


 
Anatoly Podgoretsky ©   (2006-01-08 12:49) [2]

Что за символы и не подойдет ли стандартные генератор.


 
NaziGhost   (2006-01-08 13:01) [3]

можно попробовать вот так

var
niz,verh,rnd: byte;
res: char;
begin

randomize;

niz   := ORD("A");
verh := ORD("z"); // для англицких есесно

rnd:=random(verh);
if rnd > niz then
  res:= Chr(rnd);

код не проверл, так написал, поправьте если что не так и не судите строго =)


 
jack128 ©   (2006-01-08 13:10) [4]

NaziGhost   (08.01.06 13:01) [3]
niz   := ORD("A");
verh := ORD("z"); // для англицких есесно

rnd:=random(verh);
if rnd > niz then
 res:= Chr(rnd);


А может просто Result := Chr(Random(Ord("Z") - Ord("a")) + Ord("a")) ??


 
NaziGhost   (2006-01-08 14:27) [5]

=) и такое тоже


 
Piter ©   (2006-01-08 14:43) [6]

jack128 ©   (08.01.06 13:10) [4]
А может просто Result := Chr(Random(Ord("Z") - Ord("a")) + Ord("a")) ??


агы, Ord("a") сокращается... и что у нас остается? :))

Ну идея понятно, только надо учесть, что символы a..z идут не сразу после A..Z (точно не уверен, но по крайней мере для русских "А".."Я" и "а".."Я" это точно так).

То есть, сначала можно рандомно выбрать - какую буквку генерировать (заглавную или прописную), а потому же из нужного диапазона генерировать...


 
Piter ©   (2006-01-08 14:44) [7]

Piter ©   (08.01.06 14:43) [6]
но по крайней мере для русских "А".."Я" и "а".."Я"


но по крайней мере для русских "А".."Я" и "а".."я"


 
Piter ©   (2006-01-08 14:46) [8]

jack128 ©   (08.01.06 13:10) [4]

Сори, я скобочку не заметил, спутал :)


 
TUser ©   (2006-01-08 21:19) [9]

[2]
random(max-min)+min


 
VirEx ©   (2006-01-08 22:03) [10]

procedure TForm1.Button1Click(Sender: TObject);
begin
randomize;
form1.Caption:=char(57-random(9)); //0 - 9
form1.Caption:=char(90-random(25));//A - Z
form1.Caption:=char(122-random(25));//a - z
form1.Caption:=char(223-random(31));//А - Я
form1.Caption:=char(224-random(31));//в - я
end;


 
VirEx ©   (2006-01-08 22:03) [11]

procedure TForm1.Button1Click(Sender: TObject);
begin
randomize;
form1.Caption:=char(57-random(9)); //0 - 9
form1.Caption:=char(90-random(25));//A - Z
form1.Caption:=char(122-random(25));//a - z
form1.Caption:=char(223-random(31));//А - Я
form1.Caption:=char(224-random(31));//а - я
end;


 
VirEx ©   (2006-01-08 22:07) [12]


>  [11] VirEx ©   (08.01.06 22:03)

ну енто конечно можно и form1.Caption:=char(ord("0")-random(9)); //0 - 9 и по аналогии с остальными



Страницы: 1 вся ветка

Текущий архив: 2006.02.05;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.026 c
15-1137049365
Тульский
2006-01-12 10:02
2006.02.05
Парадокс ООА для эволюционных процессов


2-1137640665
SergP
2006-01-19 06:17
2006.02.05
TListview. Перейти к заданному item у


10-1112870103
Programmer Andrey
2005-04-07 14:35
2006.02.05
Word OleContainer


2-1137548533
Gena
2006-01-18 04:42
2006.02.05
Delphi7


2-1137109613
Люди
2006-01-13 02:46
2006.02.05
Как узнать существует ли файл на сайте