Вниз
Скачать: 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 вся ветка

Скачать: CL | DM;



Память: 0.47 MB
Время: 0.025 c
15-1137182489
LordOfRock
2006-01-13 23:01
2006.02.05
Total Commander Plugin


1-1136793388
Старик
2006-01-09 10:56
2006.02.05
Перегрузка функций


2-1137870520
Compton's G
2006-01-21 22:08
2006.02.05
Сохранение в Jpeg из TImage


8-1124933210
Исследователь
2005-08-25 05:26
2006.02.05
Попытка видеозахвата (DirectShow)


4-1132574695
NiGGa
2005-11-21 15:04
2006.02.05
Информация о программе.




   Наверх