(how to generate unique random numbers using delphi)
Assalamu'alaikum,
Terimakasih buat rekan-rekan yang telah mengunjungi blog saya,,
Berikut ini adalah skrip yang saya buat dengan bahasa delphi untuk membangkitkan 8 angka acak yang berbeda. Angka yang terbangkitkan mulai dari angka 1 sampai dengan 8, kode selengkapnya dapat dilihat dibawah ini :
program Project1;
{$APPTYPE CONSOLE}
uses
SysUtils,
math;
var
nilai:array[0..20] of integer;
i,j :integer;
begin
writeln('Membangkitkan nilai acak yang berbeda dari 1 s/d 8');
for i:=1 to 4 do
begin
nilai[i]:=0;
end;
for i:=1 to 9 do
begin
randomize;
nilai[i] :=math.RandomRange(1,9);
j :=1;
//menangani nilai yang sama
repeat
if j<>i then
if nilai[i]=nilai[j] then
begin
nilai[i]:=randomrange(1,9);
j:=1;
end;
j:=j+1;
until j=9;
end;
for i:=2 to 9 do
begin
writeln(' nilai ke '+inttostr(i-1)+' = '+inttostr(nilai[i]));
end;
readln;
end.
Bila ingin mengubah rentang angka yang dibangkitkan, tinggal mengubah batas angka loopingnya saja.
Untuk pertanyaan, keritik dan saran yang membangun, sangat saya harapkan.
Terimakasih buat rekan-rekan yang telah mengunjungi blog saya,,
Berikut ini adalah skrip yang saya buat dengan bahasa delphi untuk membangkitkan 8 angka acak yang berbeda. Angka yang terbangkitkan mulai dari angka 1 sampai dengan 8, kode selengkapnya dapat dilihat dibawah ini :
program Project1;
{$APPTYPE CONSOLE}
uses
SysUtils,
math;
var
nilai:array[0..20] of integer;
i,j :integer;
begin
writeln('Membangkitkan nilai acak yang berbeda dari 1 s/d 8');
for i:=1 to 4 do
begin
nilai[i]:=0;
end;
for i:=1 to 9 do
begin
randomize;
nilai[i] :=math.RandomRange(1,9);
j :=1;
//menangani nilai yang sama
repeat
if j<>i then
if nilai[i]=nilai[j] then
begin
nilai[i]:=randomrange(1,9);
j:=1;
end;
j:=j+1;
until j=9;
end;
for i:=2 to 9 do
begin
writeln(' nilai ke '+inttostr(i-1)+' = '+inttostr(nilai[i]));
end;
readln;
end.
Untuk pertanyaan, keritik dan saran yang membangun, sangat saya harapkan.