Hirdetés
- Azonnali VGA-s kérdések órája
- Milyen monitort vegyek?
- OLED TV topic
- Házimozi haladó szinten
- Amlogic S905, S912 processzoros készülékek
- Philips LCD és LED TV-k
- Azonnali notebookos kérdések órája
- Pánikban a világ a Radeon RX 5000 és 6000 sorozat támogatása miatt
- Fejhallgató erősítő és DAC topik
- Androidos tablet topic
Új hozzászólás Aktív témák
-
atom87
aktív tag
Üdv!
Kellene egy kis segítség:
Adott egy tömb, ami véletlen szerűen generált számokat tartalmaz. Ezek a számok egy tábla rekordjainak sorszámai lennének. A feladat az lenne, hogy a fő táblából(ami minden rekordot tartalmaz) át kéne mozgatni(batchmove) egy másodlagos('munka') táblába a tömbben található sorszámoknak megfelelő rekordokat fő táblából a másodlagosba...
Korábban a program működött set of 1..255 változóval(ebbe kerültek bele a véletlen generált sorszámok, csak ugye a set az sorba rendeződik, így a véletlenszerűség elúszik):
procedure TKerdesForm.keresminden;
var i,j,k,l,m:integer;
szam:set of 1..255;
begin
torles;
randomize;
i:=StrToInt(edtkerdesszam.text);
edtkerdesszam.clear;
j:=foform.tblalap.recordcount;
szam:=[];
for k:= 1 to i do
begin
repeat
l:=random(j)+1;
until not(l in szam);
szam:=szam+[l];
foform.tblalap.setkey;
foform.tblalap.fields[0].asinteger:=l;
foform.tblalap.gotokey;
foform.tblmunka.insert;
for m:= 0 to foform.tblmunka.fieldcount-1 do
foform.tblmunka.fields:=foform.tblalap.fields(m);
foform.tblmunka.post;
end;
foform.tblmunka.first;
kerdesform.close;
end;Megcsináltam tömbösre, a sorszámok le is generálódnak, de valahol a setkey környékén meghal a progi:
procedure TKerdesForm.keresminden;
var i,j,k,l,m,n:integer;
szamok:TSzamok;
begin
n:=0;
torles;
randomize;
i:=StrToInt(edtkerdesszam.text);
edtkerdesszam.clear;
j:=foform.tblalap.recordcount;
// szam:=[];
TombNullaz(szamok);
for k:= 1 to i do
begin
repeat
l:=random(j)+1;
// until not(l in szam);
until not (TombBenneVan(szamok,l));
szamok[n]:=l;
foform.tblalap.SetKey;
foform.tblalap.fields[0].asinteger:=l;
foform.tblalap.gotokey;
foform.tblmunka.insert;
for m:= 0 to foform.tblmunka.fieldcount-1 do
foform.tblmunka.fields(m):=foform.tblalap.fields(m);
foform.tblmunka.post;
n:=n+1;
end;
foform.tblmunka.first;
kerdesform.close;
end;Ötlet esetleg??
Új hozzászólás Aktív témák
- Azonnali VGA-s kérdések órája
- Elon Musk billiomos lesz, ha kitör a gépek forradalma
- Vigneau interaktív lokálblogja
- Milyen monitort vegyek?
- Xiaomi Mi 9T Pro - tizenegyes!
- Samsung Galaxy Z Fold7 - ezt vártuk, de…
- OLED TV topic
- Házimozi haladó szinten
- Mibe tegyem a megtakarításaimat?
- Kínai és egyéb olcsó órák topikja
- További aktív témák...
- GYÖNYÖRŰ iPhone 15 Pro Max 512GB Black Titanium -1 ÉV GARANCIA - Kártyafüggetlen, MS3867, 100% Akksi
- Honor 90 /12/512GB / Kártyafüggetlen / 12Hó Garancia
- NJOY Szünetmentes + AVR Horus Plus 2000, 2000VA, 1200W, Line-Interactice, LCD Touch displa PWUP-LI20
- Azonnali készpénzes Sony Playstation 5 lemezes és digitális felvásárlás személyesen/csomagküldéssel
- ÁRGARANCIA!Épített KomPhone Ryzen 7 7700X 32/64GB RAM RTX 5070 12GB GAMER PC termékbeszámítással
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest


