![]() |
|
|
|||||||
| Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
#1
|
|||
|
|||
|
народ, кто нибудь пробовал эту процедуру:
Код:
var
int : Integer;
i : Integer;
begin
ShowMessage('Первые 5 фиксированных чисел');
for i := 1 to 5 do
begin
int := 1 + Random(100);
ShowMessage('int = '+IntToStr(int));
end;
Randomize;
ShowMessage('');
ShowMessage('Следующие 5 случайных чисел');
for i := 1 to 5 do
begin
int := 1 + Random(100);
ShowMessage('int = '+IntToStr(int));
end;
end; |
|
#2
|
|||
|
|||
|
А что у тебя не получается? Или что тебе нужно чтобы получилось? Уточни плиз
|
|
#3
|
|||
|
|||
|
этот код - объектная процедура. я хочу переделать ее в ф-цию NumFunc(j:integer):integer где j допустим можно использовать как random(j). мне все равно где j там будет лишь бы заработало...
а в самой процедуре будет так Код:
if NumFunc(10) = 5 then begin ![]() |
|
#4
|
|||
|
|||
|
Чесно, либо я перепил пенного, либо хочу спать, но тебя я реально не понимаю))) Толком с расстановкой можешь объяснить?
Куда ты хочешь передавать функцию Код:
NumFunc(j:integer):integer И в какой процедуре должно быть так: Код:
if NumFunc(10) = 5 then begin |
|
#5
|
||||
|
||||
|
Код:
Randomize;
......
function CommonNumeric(var OutBuff:Array Of Byte):Byte;
var I:Byte;
begin
For I:=1 To 5 Do
OutBuff[I-1]:=1+Random(100);
Result:=I;
end;Код:
var Common:Array[0..4]Of Byte;
Count,Index:Byte;
begin
Count:=CommonNumeric(Common);
For Index:=0 To Count-1 Do
ShowMessage(IntToStr(Common[Index]));
end; |
|
#6
|
|||
|
|||
|
M.A.D.M.A.N., я твой код пытался подогнать, но все аналогично не работает... вот как я хочу:
Код:
function randomall(i1:integer):integer;
var
int: Integer;
begin
randomize;
begin
int := 1 + Random(i1);
result:= int;
end;
end;
procedure privet(P:pchar);stdcall;
var
s:string;
int:integer;
begin
s:= strpas(P);
int:= randomall(strtoint(s));
showmessage(inttostr(int));
end;Последний раз редактировалось drkane, 22.08.2008 в 00:16. |
|
#7
|
|||
|
|||
|
То есть ты хочешь чтобы функция randomall(i1:integer):integer возвращала пять раз случайное число из деапазона 1..i1+1? А в другой процедуре это выводилось?
Если так как я понял, то вот так )) Код:
type TMyArray = array [0..4] of Integer; function Randomall(const Numbler: Integer): TMyArray; var i: Integer; begin for i := 0 to 4 do Result[i] := Random(Numbler) + 1; end; procedure privet(P: PChar); stdcall; var ResArray: TMyArray; s: String; int, i: Integer; begin Randomize; s := Strpas(P); ResArray := Randomall(StrToInt(s)); for i := 0 to 4 do ShowMessage(IntToStr(ResArray[i])); end; Последний раз редактировалось Drozh, 21.08.2008 в 23:47. |
|
#8
|
|||
|
|||
|
Цитата:
|
|
#9
|
|||
|
|||
|
А зечем тогда в цикле 5 раз прогонять?
|
|
#10
|
|||
|
|||
|
ошибся. просто сначала на 5 пробовал, потом на 1. но все равно не работает
ща твою попробую ![]() твоя тоже не работает я уже шизеть начинаю с этих "случайностей". самое интересное что в ФАКе описано на примере обьектной процедуры, а стоит поробовать переделать в ф-цию или внести в новую длл, как ноль полный Последний раз редактировалось drkane, 22.08.2008 в 00:26. |
|
#11
|
|||
|
|||
|
А что ты сделать хочешь? ФАК чего? Делфи? И что именно у тебя не получается?
|
|
#12
|
|||
|
|||
|
сцуко... долбаная чувствительность к регистру!!! столько бился, оказывается в адресах длл, в одной P
char, во второй p char ![]() |
|
#13
|
|||
|
|||
|
тупые смайлики))) конечно ты не понял, потому что я сам ступил в своих ф-циях, причем такая глупая ошибка)))
Последний раз редактировалось drkane, 22.08.2008 в 16:31. |