Random
eu não sei c vcs já perceberam...
mas a função Random do Delphi, não é nada randomica!
fassa um teste com um botao e um edit!
no onClick do botao manda ele passa o ´Edit1.Text := IntToStr(Random(7))´ , por exemplo.
usei o 7 pq esatava simulando um dado e reparei q sempre os resultados são os mesmos! no caso do sete são, em ordem: 0, 0, 6, 1, 1, 4, 2, 1, 2 ...
fassam o teste ... gosteria d saber c ter como arrumar isso ou c existe algum função q realmente fassa um sorteio randômico!
[]´s Secoo
=DDDDDDDD
mas a função Random do Delphi, não é nada randomica!
fassa um teste com um botao e um edit!
no onClick do botao manda ele passa o ´Edit1.Text := IntToStr(Random(7))´ , por exemplo.
usei o 7 pq esatava simulando um dado e reparei q sempre os resultados são os mesmos! no caso do sete são, em ordem: 0, 0, 6, 1, 1, 4, 2, 1, 2 ...
fassam o teste ... gosteria d saber c ter como arrumar isso ou c existe algum função q realmente fassa um sorteio randômico!
[]´s Secoo
=DDDDDDDD
Seccomiro
Curtidas 1
Melhor post
Marcelo Saviski
28/12/2004
só é preciso chamar o Randomize 1 vez, pode colocar o Randomize no OnCreate do Form.
ou senão, vc pode mudar o valor da variável RandSeed;
se colocar RandSeed := 5; ao inicializar por exemplo, ele vai dar sempre a mesma sequencia, mas diferente se vc colocar outro valor no RandSeed;
ou senão, vc pode mudar o valor da variável RandSeed;
se colocar RandSeed := 5; ao inicializar por exemplo, ele vai dar sempre a mesma sequencia, mas diferente se vc colocar outro valor no RandSeed;
GOSTEI 1
Mais Respostas
Gandalf.nho
22/12/2004
Use a função Randomize antes de usar Random.
GOSTEI 0
Marcosrocha
22/12/2004
Olá, eu confirmei seu teste, os números aparecem sempre na ordem que vc disse.
Montei esse código e cada vez que eu abro o programa a ´randomização´ é diferente!!!
Faça alguns testes para ver se isso serve!! Mas eu reparei que aparecem muitos 0 no evento do botão 1 para randomizar...
Do mais o código está aí!!!
Montei esse código e cada vez que eu abro o programa a ´randomização´ é diferente!!!
Faça alguns testes para ver se isso serve!! Mas eu reparei que aparecem muitos 0 no evento do botão 1 para randomizar...
Do mais o código está aí!!!
procedure TForm1.Button1Click(Sender: TObject); begin Randomize; Edit1.Text := IntToStr(Random(7)); end;
GOSTEI 0
Titanius
22/12/2004
realmente constatei este problema... a probabilidade de aparecer algum numero repetido eh muito grande, nao vale a pena utilizar o random, se queres algo realmente randomico...
alguem teria alguma funcao para randomicos?
[]s
alguem teria alguma funcao para randomicos?
[]s
GOSTEI 0
Gandalf.nho
22/12/2004
No Delphi tem uma unit com outras funções randômicas, dê uma olhada
GOSTEI 0