Criação de números aleatórios no Delphi

Delphi

27/09/2012

Caros peço a ajuda de vocês para desenvolver o seguinte programa:

Três botões
• Apertar no botão 1 (ex. gerar arquivo texto 1 numero em cada linha em ordem aleatória ao todo 1000 números);
• Clicar no botão 2 ele vai ler o arquivo que você criou no botão 1 e vai criar um novo arquivo em ordem crescente;
• Botão Colocar na tela o maior numero.



Agradeço!

Cristiano Magalhães

Cristiano Magalhães

Curtidas 1

Melhor post

Joel Rodrigues

Joel Rodrigues

27/09/2012

Para isso, você poderá utilizar a função Random. Veja um link explicando como fazer isso: http://www.delphibasics.co.uk/RTL.asp?Name=Random
Já para gravar e ler o arquivo, sugiro utilizar um TStringList. Eis um link que pode ajudar: http://www.delphibasics.co.uk/RTL.asp?Name=TStringList

Boa sorte.
GOSTEI 1

Mais Respostas

Cristiano Magalhães

Cristiano Magalhães

27/09/2012

Obrigado!
GOSTEI 0
Cristiano Magalhães

Cristiano Magalhães

27/09/2012

Caríssimo Joel Rodrigues tipo assim usei a função Random que você me propôs a usar achei excelente!
Só que da forma que ei fiz os números estão saindo um a um na tela como coloca-los para sair no arquivo texto!
seguem o código fonte:

procedure TForm1.Button1Click(Sender: TObject);
var
float : single;
int : Integer;
i : Integer;

begin

for i := 1 to 10 do
begin
int := 1 + Random(10000);
ShowMessage('int = '+IntToStr(int));
end;
end;

GOSTEI 0
Bruno Leandro

Bruno Leandro

27/09/2012

Ola Cristiano nao sei se reparou mas desta forma a sequencia criada é viciada, ou seja, sempre gera os mesmo numero ex: 84,234,133,677.....84,234,133,677.....84,234,133,677.....84,234,133,677
para isso nao ocorrer utilize o randomize

procedure TForm1.Button1Click(Sender: TObject);
var
float : single;
int : Integer;
i : Integer;

begin
Randomize;
for i := 1 to 10 do
begin
int := 1 + Random(10000);
ShowMessage('int = '+IntToStr(int));
end;
end;
GOSTEI 0
Leonardo Xavier

Leonardo Xavier

27/09/2012

Caríssimo Joel Rodrigues tipo assim usei a função Random que você me propôs a usar achei excelente!
Só que da forma que ei fiz os números estão saindo um a um na tela como coloca-los para sair no arquivo texto!
seguem o código fonte:

procedure TForm1.Button1Click(Sender: TObject);
var
float : single;
int : Integer;
i : Integer;

begin

for i := 1 to 10 do
begin
int := 1 + Random(10000);
ShowMessage('int = '+IntToStr(int));
end;
end;




Coloque um savedialog e Tente Utilizar este codigo abaixo.

var
  int   : Integer;
  i     : Integer; 
  texto : TStringList;
begin
  texto := TStringList.Create;

   for i := 1 to 10 do
  begin
    int := 1 + Random(10000);
    ShowMessage('int = '+IntToStr(int));
    texto.add(inttostr(int));
  end;
  savedialog1.filename := 'meutextosalvos.txt';
  if savedialog1.execute then
  texto.SavetoFile(savedialog1.filename);
  texto.Free;
end;
GOSTEI 0
Thiago Santana

Thiago Santana

27/09/2012

Só utilizar o Random!
Você pode manipular os intervalos de números gerados e etc
GOSTEI 0
Joel Rodrigues

Joel Rodrigues

27/09/2012

Opa, Cristiano. Só agora vi sua mensagem, mas os amigos já responderam. Junta a resposta do Bruno com a do Leonardo que você deve alcançar seu objetivo.
Boas sorte.
GOSTEI 0
Cristiano Magalhães

Cristiano Magalhães

27/09/2012

Como colocar um Savedialog??? tem como vc especificar ...
grato!
GOSTEI 0
Cristiano Magalhães

Cristiano Magalhães

27/09/2012

Galera é o seguinte na verdade estou utilizando o lazarus que seria uma versão do Delphi free só que sou iniciante em programação logo peço a compreensão de vcs se puderem especificar detalhadamente como utilizar os comandos ficaria grato!

Cordialmente: Cristiano Duarte de Magalhães
GOSTEI 0
Cristiano Magalhães

Cristiano Magalhães

27/09/2012

Galera muito obrigado! O primeiro botão consegui terminar estou trabalhando agora no segundo qualquer duvida peço a ajuda de vocês!
GOSTEI 0
POSTAR