Hirdetés
- Magga: PLEX: multimédia az egész lakásban
- Luck Dragon: Asszociációs játék. :)
- Brogyi: CTEK akkumulátor töltő és másolatai
- D1Rect: Nagy "hülyétkapokazapróktól" topik
- f(x)=exp(x): A laposföld elmebaj: Vissza a jövőbe!
- sh4d0w: Ez van, srácok...
- sziku69: Fűzzük össze a szavakat :)
- sziku69: Szólánc.
- sidi: 386-os Chicony gázplazma laptop memóriabővítése
- Lalikiraly: Kinek milyen setupja van?
Hirdetés
(használd a CYBSEC25PH kuponkódot további 20 ezer ft kedvezményért!)
Új hozzászólás Aktív témák
-
atom87
aktív tag
Nos fentebb felmerült hibát sikerült megoldanom, egy változó kezdő értéke volt a hibás...
De most felmerült egy újabb probléma: megkaptam a másik tömb tartalmát, de a táblába ismét rendeződik az indexelése miatt.
Mit lehet ez ellen tenni?Itt egy kép, hogy mire is gondolok. A pirossal bekarikázott oszlop a kapott véletlen sorszámok és ezek szerint rendeződik.
Én pedig azt szeretném, hogy a random sorrend maradjon meg.
Más szerint kellene indexelnem? Esetleg módosítanom kellene a táblát? -
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
- Lenovo Thinkpad L13, 13,3" FHD IPS, I5-10310U, 16GB DDR4, 512 GB SSD, W11, Számla, 1 év garancia ( o
- Lenovo Thinkpad L15, 15,6" FHD IPS, Ryzen 7 Pro 4750U , 16GB DDR4, 256GB SSD, W11, Számla, 1 év gara
- SAMSUNG 27" Odyssey OLED G6 G60SD QHD 360Hz 0.03ms Gaming Monitor - MediaMarkt garancia 2027.11.25.
- ASUS PRIME GeForce RTX 5070 OC 12GB hibátlan, garanciás, személyes átvétel
- Eladó Kukirin M4 MAX garanciális CSERE IS!
- HP ZBook Firefly 14 i7-1165G7 16GB 512GB Nvidia Quadro T500 4GB 14" FHD 1 év garancia
- Update 10.10. - Bomba árak 2025-ben is! Üzleti - Consumer laptopok DELL FUJITSU HP LENOVO
- Nyugdíjazott laptopok :) Ingyen Foxpost!
- BESZÁMÍTÁS! Gigabyte A520M R5 5500 16GB DDR4 512GB SSD RTX 2060 Super 8GB Rampage Shiva A-Data 600W
- Azonnali készpénzes AMD Radeon RX 6000 sorozat videokártya felvásárlás személyesen/csomagküldéssel
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest