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

Вниз

Числа   Найти похожие ветки 

 
Mozgan   (2006-09-03 10:51) [0]

Всем привет!
Подскажите пожалуйста, как можно в Edit1 засунуть сгенерированные числа? На форме есть кнопка и Edit. Как сделать, чтобы вся длина едита заполнилась случайными числами?
Я начал работу вот так, но что-то дальше не получается :(

var i,j,f: integer;
begin
 randomize;
 f:=0;
 for i:=0 to 10 do
 begin
 j:= random(10)+1;
 for f:=0 to length(edit1.Text)do

 Edit1.Text:=IntToStr(j+length(Edit1.Text));
end;


 
SerJaNT ©   (2006-09-03 10:54) [1]

Я думаю что надо сначала определить ширину одного символа, потом относительно ширины edit1 расщитать кол-во смиволов (edit1.width/SymbolWidth).


 
Mozgan   (2006-09-03 10:57) [2]

Ширина мне не нужна. Шрифт и стиль значения не имеют. Мне просто для примера нужно :)


 
DprYg ©   (2006-09-03 11:04) [3]


> Как сделать, чтобы вся длина едита заполнилась случайными
> числами?

> Ширина мне не нужна. Шрифт и стиль значения не имеют.
То есть получается, что тебе все равно сколько чисел в едите будет
написано?


 
Mozgan   (2006-09-03 11:09) [4]

А.. понял о чем ты имеешь в виду. Извини.
Предположим, что 10 чисел (например: 5136978012).
Вот именно это мне и нужно сгенерировать. По сей момент копаю в коде - темнота. Не получается.
И ещё, может хранить во временную переменную типа string?


 
DprYg ©   (2006-09-03 11:14) [5]

Edit1.Text := "";
Randomize;
for i := 1 to 10 do
Edit1.Text := Edit1.Text + IntToStr(Random(10)); ?


 
SerJaNT ©   (2006-09-03 11:15) [6]

А еще проще контролировать кол-во символов еще до того как они появятся в edit1.

Например, так

randomize();
for i:=0 to 500 do begin
str := str + IntToStr(random(9));
if Length(str) > 10 then break;
end;

edit1.text := str;

примерно так.


 
Mozgan   (2006-09-03 11:17) [7]

Вот блин! Все так просто а башка не соображает...
Спасибо тебе за помощь?

И один последний вопрос относительно темы.
Предположим нужно отдельно буквы сгенерить.
Нужно как я понимаю указать множетсво этх букв?


 
SerJaNT ©   (2006-09-03 11:18) [8]

Тут тебе поможет функция Chr(). Инфу смотри в справке.


 
SerJaNT ©   (2006-09-03 11:20) [9]

Ой, блин, не Chr, тебе же надо букву! Сорри. Да, тогда можно сделать массив и тоже рандомом из него извлекать символы.


 
Mozgan   (2006-09-03 11:24) [10]

То есть так копать ты мне велишь, брат!


 
SerJaNT ©   (2006-09-03 11:28) [11]

Можно и так Edit1.Text := Chr(random(255));

но тогда могут появится не только буквы, но и спец символы, а если только буквы, то можно либо через массив, либо определенные диапазоны ASCII кодов.


 
Mozgan   (2006-09-03 11:32) [12]

можно либо через массив

Покажи пожалуйста пример. Тема очень интересная для меня!


 
DprYg ©   (2006-09-03 11:39) [13]

Создаешь массив. Заполняешь символами(можно вручную). Генерируешь
случайное число(но чтобы не вышло за границу массива). И берешь элемент массива с этим номером. Все.


 
SerJaNT ©   (2006-09-03 11:41) [14]

примерно так:

var MyArray: array[0..9] of String;

...

randomize();

MyArray[0]:="А";
MyArray[1]:="Б";
...
MyArray[9]:="Р";

edit1.text := MyArray[random(9)];


 
DprYg ©   (2006-09-03 11:41) [15]

Вместо массива можно строку использовать


 
DprYg ©   (2006-09-03 11:42) [16]


> var MyArray: array[0..9] of String;
?


 
SerJaNT ©   (2006-09-03 11:43) [17]

> ?


Что?


 
Palladin ©   (2006-09-03 11:44) [18]

Function RandomStr(n:Integer):String;
const
a:String="abcdefghijklmnopqrstuvwxyz";
var
i,k:Integer;
Begin
k:=Length(a);
SetLength(Result,n);
For i:=1 to n Do Result[i]:=a[Random(k)+1];
End;


 
SerJaNT ©   (2006-09-03 11:44) [19]

Ну можно Char написать


 
DprYg ©   (2006-09-03 11:53) [20]


> a:String="abcdefghijklmnopqrstuvwxyz";
Да, именно это я и имел ввиду в [15]



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

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

Наверх




Память: 0.51 MB
Время: 0.034 c
15-1157316892
_dimka
2006-09-04 00:54
2006.09.24
VS: проблема с ComboBoxEx32


3-1153733799
Alex Bakulin
2006-07-24 13:36
2006.09.24
dbExpress. Создание редактируемого набора данных в runtime


2-1157190932
Id
2006-09-02 13:55
2006.09.24
Маска в StringGrid-e


15-1157128917
cyborg
2006-09-01 20:41
2006.09.24
Поразмышлял и ужаснулся


1-1155638942
ак
2006-08-15 14:49
2006.09.24
непонятная ошибочка