Array
(
)

Gerar Números Aleatório

Pellegrini
   - 07 ago 2004

Ola Galera da lista preciso de um grande favor de vcs, e que eu tenho um programa de Cadastro de Matriculas com o Campo Nº de matricula e queria que esse campo recebesse um numero aleatorio sem repetição de Sequência.

obs : Este campo é tipo string e seu tamanho é 5

Obrigado



Texto editado.
Estava com a fonte no tamanho [size=18:6e59bb29b2]18[/size:6e59bb29b2].

Pellegrini,
Não utilize tamanho de fontes além do normal, pois torna-se cansativo para leitura; é desagradável e dá a impressão que você está gritando.
Por favor, releia as [url=http://delphiforum.icft.com.br/forum/viewtopic.php?t=6689]Regras de Conduta[/url] do fórum.

Sandra/Moderação


Oscar Candido
   - 07 ago 2004

Para gerar numeros aleatórios vc pode usar a função Random, exemplo:

#Código

Random(1000);

vai retornar numeros aleatórios entre 0 e 1000
espero te ajudado


Sonec2004
   - 08 ago 2004

Uma vez tive esse problema e usei o seguinte:
#Código

Procedure AleatorioDiferente;
Var
Universo : Array[1..1000] of integer
Aleatorios : Array[1..1000] of integer;
i, j , n, w: Integer;
Begin
n:= 1000;
For i:=1 to 1000 do
Universo[i]:=i; {Gera 1000 numeros em ordem crescente}
Randomize;
For i:=1 to 1000 do
Begin
w :=(Random(n)+1); {w fica valendo um numero de 1 até n}
Aleatorios[i]:=Universo[w]; {w fica na posição i de Aleatorios}
For j:=w to n do
Universo[j]:=Universo[j+1]; {O valor w sai do vetor Universo}
n:=n-1; {n vai decrementando}
End;
End; {Os valores ficarm armazenados desordenadamente em Aleatorios}


Espero ter ajudado.

sonec2004@itelefonica.com.br


Deryck
   - 09 ago 2004

Cara , ja entendi o que vc deseja , mas posso te dar uma opiniao, o lance é que sua palicação esta pequena agora, e pra você ,numeros aleatorios seria bom, mas se voce ter uma aplicação maior , seria bom você terum incrementador, pois busca em números ordenados, se caso vc precisasse fazer um consulta em determinada matricula, seria bem mais facil que se for com numero aleatorio, isso melhoraria a performace da sua aplicação.na meu ver , seria ideal você colocar um auto incremnto ou coisa assim,

So minha opiniao!

jordano.soares@csnet.com.br