aşağıda verdiğim kodlar;
[Error] Unit1.pas(36): '(' expected but '[' found
hatası veriyor.
nerde hata yaptım? lütfen aydınlatın beni.
sağlıcakla...
procedure TForm1.Button1Click(Sender: TObject);
var
dizi : array[1..20,1..20,1..20] of integer;
a,i,x : integer;
begin
randomize;
i := 1;
x := 1;
repeat
a := random(20)
until for x := 1 to 20 do a := dizi[1,x];
end;
Dizi sorunu
Forum kuralları
Forum kurallarını okuyup, uyunuz!
Forum kurallarını okuyup, uyunuz!
sanırım 3'lü bir array oluşturup döngü içerisinde 2'li olarak yazmandan kaynaklanabilir.
until for x := 1 to 20 do a := dizi[1,x,?];
until for x := 1 to 20 do a := dizi[1,x,?];
Oldeye Software
http://www.oldeye.com
http://www.oldeye.com
yapmak istediğim
sıkı durun anlatıyorum:
random olayı ile 50'ye kadar bir sayı tutmayı, her defasında da farklı bir sayı tutmayı, dolayısı ile 50.random sayıda 1-50 arasındaki tüm sayıların seçilmiş olmasını sağlamak istiyorum.
bunu; üretilen sayıyı dizideki diğer elemanlarla karşılaştırarak, eğer dizide varsa tekrar sayı üretmesi yoksa diziye eklemesi yoluyla yapmak istedim.
son geldiğim aşama bu işte...
yardım ederseniz sevinirim.
random olayı ile 50'ye kadar bir sayı tutmayı, her defasında da farklı bir sayı tutmayı, dolayısı ile 50.random sayıda 1-50 arasındaki tüm sayıların seçilmiş olmasını sağlamak istiyorum.
bunu; üretilen sayıyı dizideki diğer elemanlarla karşılaştırarak, eğer dizide varsa tekrar sayı üretmesi yoksa diziye eklemesi yoluyla yapmak istedim.
son geldiğim aşama bu işte...
yardım ederseniz sevinirim.

CE
normalde cevapta kod un tamamını yazmam ama bir istisna oldu bu
Kod: Tümünü seç
procedure TfrmMain.Button1Click(Sender: TObject);
function DizideAra(val: Integer; d: array of Integer): Boolean;
var
i: Integer;
begin
result := False;
for i := 1 to 50 do
if d[i] = val then
begin
result := True;
exit;
end
end;
var
d: array[1..50] of Integer;
i, val: Integer;
begin
for i := 1 to 50 do
d[i] := 0;
for i := 1 to 50 do
begin
repeat
val := Random(50);
sleep(1);
if val = 0 then
continue;
until not DizideAra(val, d);
//diziye ekle
d[i] := val;
end;
//dizimiz tamamdır
end;
ÜŞENME,ERTELEME,VAZGEÇME